Method and apparatus for predicting object properties using similarity based information retrieval and modeling

ABSTRACT

Method and apparatus for predicting properties of a target object comprise application of a search manager for analyzing parameters of a plurality of databases for a plurality of objects, the databases comprising an electrical, electromagnetic, acoustic and thermal spectral database (ESD), a micro-body assemblage database (MAD) and a database of image data whereby the databases store data objects containing identifying features, source information and information on site properties and context including time and frequency varying data. The method comprises application of multivariate statistical analysis and principal component analysis in combination with content-based image retrieval for providing two-dimensional attributes of three dimensional objects, for example, via preferential image segmentation using a tree of shapes and to predict further properties of objects by means of k-means clustering and related methods. By way of example, an evidence tree display showing a target object linked by a pathway to a predicted property comprises a similarity value, a speculation value and a model-based rank.

This application is a continuation of U.S. patent application Ser. No. 13/761,298 filed Feb. 7, 2013 (now allowed) which is a continuation of U.S. patent application Ser. No. 12/823,303 filed Jun. 25, 2010 (now U.S. Pat. No. 8,396,870 issued Mar. 12, 2013) having the same title and inventors which claims the benefit of priority to provisional U.S. Patent Application Ser. No. 61/220,248 filed Jun. 25, 2009 and to provisional U.S. Patent Application Ser. No. 61/334,882 filed May 14, 2010, the entire disclosures of which are hereby incorporated by reference into the present application.

This invention was made with U.S. Government support under contract W9113-09-C-0188 awarded by the U.S. Army Space and Missile Defense Command/U.S. Army Forces Strategic Command. The U.S. Government has certain rights in the invention.

TECHNICAL FIELD

The technical field relates to a method and apparatus for predicting object properties using similarity-based information retrieval and modeling and, in particular, to the application of database and modeling software supporting model-based inference of properties of object data recorded in a plurality of databases of information collected from previously analyzed objects and samples of objects.

BACKGROUND AND RELATED ARTS

Database systems and search and retrieval from such databases are known. For example, U.S. Pat. No. 5,911,139 to Jain et al. describes a visual image database search engine which allows for different schema. A schema is a specific collection of primitives to be processed and a corresponding feature vector is used for similarity scoring. In particular, a system and method for content-based search and retrieval of visual objects computes a distance between two feature vectors in a comparison process to generate a similarity score.

U.S. Pat. No. 6,778,995 to Gallivan describes a system and method for efficiently generating cluster groupings in a multi-dimensional concept space. A plurality of terms are extracted from documents of a collection of stored, unstructured documents. A concept space is built over the collection and terms correlated between documents such that a vector may be mapped for each correlated term. Referring to FIG. 14 of the'995 patent, a cluster is populated with documents having vector differences falling within a predetermined variance such that a view may be generated of overlapping clusters.

U.S. Pat. No. 7,127,372 to Boysworth describes an improved regression-based qualitative analysis algorithm when a mixture, not in a library of spectra, and being an “unknown” is subjected to regression analysis of “peaks” in a residual error computed between an estimated spectrum and a measured spectrum. The process is repeated using information from a retro-regression.

U.S. Pat. No. 7,236,971 to Shatdal et al. describes a method and system for deriving data through interpolation in a database system. A parallel database system has plural processing units capable of performing interpolation of data in parallel.

U.S. Pat. No. 7,318,053 to Cha et al. describes an indexing system and method for nearest neighbor searches in high dimensional databases using vectors representing objects in n-dimensional space and local polar coordinates for vectors such that a query data vector is requested to find “k” nearest neighbors to the query vector of the vectors in the n-dimensional space.

Haining, “Exploratory Spatial Data Analysis in a Geographic Information System,” The Statistician 47, Part 3, 457-469 (1998) describes a software system involving the exploratory spatial data analysis features of the ARC/INFO geographical information system and identifies spatial patterns of geographic locations.

Other systems and database technologies are known which incorporate multivariate statistical analysis and, in particular, principal component analysis, from patent and non-patent literature and other technologies which utilize a geographic information system (GIS).

SUMMARY OF THE PREFERRED EMBODIMENTS

In accordance with an embodiment of a method and apparatus for predicting object properties using similarity-based information retrieval and modeling and an aspect thereof, database and modeling technologies can infer properties, for example, material composition, manufacturer, recognition of a human, recognition of vegetation, combustion product composition, fire causation and geographic information among other object properties of objects collected about the world from similar previously analyzed objects collected about the world and having their properties stored in a database. Measurable properties of the objects may be stored in one or a plurality of databases including multi-dimensional databases. While exact matches to reference data may not be expected in response to a query for a similar object given a target object under investigation, an automated search strategy may locate nearest neighbor items, or items within a specified neighborhood, with the most similar properties, from a reference collection and utilize any geographic or other information associated with these items to predict properties. Of course, a first query for an object may be followed by another query about that object or another object. Models are then utilized to predict properties of the objects from the similar data. The term “object” is intended to incorporate micro to macro size objects as well as human and animal objects and remains thereof having three dimensional shape and properties that may include any of the following: temperature, pressure, texture, shape, color, time or frequency varying data, acoustic, radio frequency spectral data, tissue type, morphology, genetic information, phenotypes, image data and the like. Correlations may be with geographic features, such as proximity to a body of water, ancient lakebeds, or particular types of vegetation, identity of manufacturer or builder, object identification or signature characteristics, human identification or characteristics and the like, so an estimate is desired of the physical or ethnic source or origin or the likely characteristics of the source or origin of a target object.

A plurality of databases and a modeling and search capability extends and exploits already patented similarity-based indexing and search technologies developed at the University of Tennessee. The following patents and published applications as well as those identified above in the Background section are incorporated by reference as to their entire contents: U.S. Pat. Nos. 7,162,372 and 7,672,790 directed to a method of resolving DNA mixtures; PCT published patent application WO 2007/0244408 related by subject matter to Published U.S. Application No. 2009/0228245 directed to DNA peak-fitting, yet to be examined; WO 2008/06719 and U.S. Pat. Nos. 7,624,087; 7,640,223; and 7,664,719 directed to an expert system and a related patent application yet to be examined; published U.S. Application Serial No. 2008/0040046, directed to associating an unknown biological specimen to a family, yet to be examined; U.S. Pat. Nos. 6,741,983; 7,272,612; 7,454,411 and unexamined related Published U.S. Patent Application No.'s 2008/0134195; 2008/0172402; 2008/0109461; and Published U.S. Patent Application No. 2009/0055361 awaiting examination directed to a parallel data processing system and a method of indexed storage and retrieval of multidimensional information and organizing data records into clusters or groups of objects. For example, these applications and patents may describe by way of example, the clustering of fire combustion products and their composition such as those resulting from a volcano or other natural event or a man-made fire, human beings having a DNA genetic profile categorized into clusters or groups, machines having a specific manufacturer, plant and animal life indigenous to a particular region of the world, earth and water bodies subjected to adverse weather conditions, buildings of a city versus those more associated with a town or village and the like to predict object properties. A database populated with measured properties of sample objects, not limited to, but, by way of example, electrical or isotopic measurements, and of trace materials found on or in objects or in environmental samples, such as assemblages of micro-bodies including, for example, charcoal or charred particles along with other micro-bodies, together with, for example, geographic data related to the source of the sample objects or environmental samples, as well as their electrical and acoustic properties can be indexed and searched using these technologies to enable the rapid retrieval of information most relevant to an object as broadly defined. The indexing methodology relies upon data reduction methods such as principal component analysis, together with data clustering algorithms, to rapidly isolate potential matches to predict a property of the object, thus producing a selection of reference data that best match the measured properties for the object.

Objects that have been previously collected are analyzed and characterized using, for example, electrical, electronic (radio frequency spectral data), acoustic (audible as well as ultrasound), chemical, mechanical, optical (visible and invisible spectra), and isotopic measurements of components, and other information about an exemplary object. For example, WO2008/153590 and Published U.S. Patent Application No.'s 2008/0309488 and 2009/0252196 and unexamined U.S. patent application Ser. No. 12/575,320 filed Oct. 7, 2009, to Icove et al. describe a passive microwave detection of a speed, fire or intrusion event including black body and spectral emission data, also incorporated by reference in their entirety. Icove et al. have measured passive electromagnetic radiation from a fire event of different types, a human being, an airplane and speed of a vehicle where quiet radio frequencies are suggested for directional, noise-free reception. Such objects, which may also include vegetation, provide distinctive data that may correlate to a signature for a target object either alone or in concert with data from a micro-body database. No active transmission is required from the source to the object or need the passive directional antenna emit any active radiation at any frequency. On the other hand, the sun provides a constant radiation source for reception by a black body during daylight hours. Black bodies are known to radiate different levels of radio frequency across the visible and invisible radio spectrum at different frequencies depending, for example, on temperature, pressure and time and frequency varying characteristics. In particular, for example, the event of a fire and its residual charred remains emit passive and active reflected radiation that can be measured and compared with known spectra data and the properties of the emitting objects predicted, for example, data of a mass spectrometer. For example, volcanic ash may be differentiated from smoke particle products of a wood fire and those of a chemical fire. Similarly, the event of a fire has been studied as will be discussed further herein and the abundance of microscopic charcoal particles in micro-body assemblages of fire remains or other residue such as condensed metals or oils correlates with type of fire and both regional and local fire occurrence. Directional microphones are also known for the collection of sound waves at sub-audible, audible and ultrasound frequencies. Electrical, electromagnetic and acoustic data provide respective spectral signatures for recognition of diverse objects.

Electromagnetic waves are created when charged particles such as electrons change their speed or direction. These electromagnetic waves consist of an electric field and a magnetic field perpendicular to the electric field. The oscillations of these fields are reflected in the frequency and wavelength of the electromagnetic wave. The frequency is the number of waves (or cycles) per second. The energy of these waves may also be characterized in terms of the energy of photons, mass-less particles of energy traveling at the speed of light that may be emitted at certain discrete energy levels. The following mathematical relationship demonstrates a relationship among the wavelength of an electromagnetic wave, its frequency, and its energy:

$\lambda = {\frac{c}{f} = \frac{hc}{E}}$

-   -   where     -   λ=wavelength (meters)     -   c=speed of light (3×10⁸ meters per second)     -   f=frequency (Hertz)     -   h=Planck's constant (6.63×10⁻²⁷ ergs per second)     -   E=energy of the electromagnetic wave (ergs)

Wavelength and frequency are the inverse of one another as related by the speed of light, and may be used interchangeably herein in the description of embodiments and the claims as equivalents of one another. Note that the energy of an electromagnetic wave is proportional to the frequency and is inversely proportional to the wavelength. Therefore, the higher the energy of the electromagnetic wave, the higher the frequency, and the shorter the wavelength.

The spectrum of electromagnetic waves is generally divided into regions or spectra, classified as to their wavelength or, inversely, as to their frequency. These bands of wavelengths (frequencies) range from short to long wavelengths (high to low frequency) and generally consist of gamma rays, x-rays, ultraviolet, visible light, infrared, microwave, and radio waves. The term “microwave” generally is used to refer to waves having frequencies between 300 Megahertz (MHz) (wavelength=1 m) and 300 Gigahertz GHz (wavelength=1 mm). Microwave radiation is highly directional, and the higher the frequency, the more directional the emitted radiation. For the purposes of the present application and claims, an emission above 300 GHz up to 1000 GHz will also be considered within the microwave band.

Radiation via electromagnetic waves can be emitted by thermal and non-thermal means, depending upon the effect of the temperature of the object emitting the energy. Non-thermal emission of radiation in general does not depend on the emitting object's temperature. The majority of the research into non-thermal emission concerns the acceleration of charged particles, most commonly electrons, within magnetic fields, a process referred to in the astrophysics field as synchrotron emission. For example, astrophysicists and radio astronomers look for synchrotron emissions from distant stars, supernovas, and molecular clouds.

On the other hand, thermal emission of radiation from electromagnetic waves depends upon the temperature of the object emitting the radiation. Raising the temperature of an object causes atoms and molecules to move and collide at increasing speeds, thus increasing their accelerations. The acceleration of charged particles emits electromagnetic radiation which forms peaks within the wavelength spectrum. There may be a direct correlation in changes in temperature impacting the accelerations of the composite particles of an object with the frequency of the radiation and peaks within the spectrum. Once an object reaches its equilibrium temperature, it re-radiates energy at characteristic spectrum peaks.

Similarly, the acoustic spectrum from sub-audible to ultrasound energy at high frequency, for example, 100 megaHertz, may be detected by similar directional microphones and their data recorded from objects in a database. Electrical characteristics such as impedance and characteristics of an object such as insulation or conduction can be observed and recorded in a database. A combination database of radio frequency, acoustic and/or other spectra (for example, optical or mass spectra) emission data as discussed herein may be referred to herein as an electro-acoustic spectral database or ESD, where electro-acoustic comprises at least electrical, radio frequency, electromagnetic, optic or acoustic data and is not to be considered so limited.

Common forms of radiation include black body radiation, free-free emission, and spectral line emission. A black body is a theoretical object that completely absorbs all of the radiation falling upon it and does not reflect any of the radiation. Thus, any radiation coming from a black body is from its inherent radiation and is not the result of any radiation incident upon it. Black body radiation is a basic form of thermal emission of electromagnetic radiation from an object whose temperature is above absolute zero (0 Kelvin). Practical examples of black body radiators include a human body, a Bunsen burner, a candle flame, the sun, vegetation of different types, water bodies, rock formations, man-made structures, machines and other stars in the galaxy.

Passive high-gain directional microwave antennas and receivers have been used to measure the temperature of a remote object in the technical field commonly known as microwave radiometry. Typical users of microwave radiometry are radio astronomers scanning extraterrestrial objects and the earth. A microwave radiometer known from the field of the astronomy sciences pointed at the sky can produce a measurable voltage output which is proportional to the temperature of the target. On the other hand, passive directional radio frequency and acoustic microphones, antennas and receivers pointed toward the earth from an elevated position such as a forest fire tower, a building, an aircraft or a satellite may collect spectral data of all types from objects at which the directional antennas and microphones are pointed and recognized by human observers.

As described above, it is known that fire, including non-flaming fires such as smoldering embers and volcanic rock, emits a wide spectrum of electromagnetic and acoustic radiation. Such radiation includes not only infrared (heat) radiation, but also includes microwave radiation in the range of 300 MHz to 1000 GHz and at corresponding wavelengths of from 1 meter to less than 1 mm, due to the energy radiated by such fires as black body emission and spectral line emission caused by the high energy (temperature) levels of a fire. Such microwave (and acoustic) radiation can be detected without the need for any corresponding emission of microwave radiation by an antenna. Instead, in accordance with aspects and features described herein, the emitted spectral energy of a fire and resultant combustion residuals in the microwave regions of the electromagnetic spectrum and acoustic spectrum can be detected using passive microwave and acoustic detection by one or more passive directional antennae/microphones.

In addition, living bodies such as persons or animals also emit microwave and acoustic radiation due to their inherent thermal energy via black body emission. This radiation and acoustic radiation also can be detected by the same directional antennas and microphones used to detect the microwave radiation and acoustic output from a fire. An electrical/acoustic spectral database (ESD) of persons, animals, objects, plants, structures, vehicles, machines and the like can be produced comprising signature spectral (electrical, electromagnetic and acoustic) and black body emission characteristics.

Each measured property can assist in locating or identifying, for example, the source or predict other properties of the object, for example, if geographically tagged reference data with similar characteristics are available. Trace materials such as charred, for example, charcoal particles in micro-body assemblages (mixtures with other materials and particles) can be used to identify, if not the geographic location or origin, then characteristics of that location such as an expected distribution of plant species, soil types, temperature and humidity conditions, and the nearby presence of geographic features such as water bodies, ancient lake beds, volcanic rock, other rock formations, man-made structures and machines and outcrops of sedimentary rocks. The relative abundance of charcoal in samples and the morphologies of charcoal particles in micro-body assemblages can provide clues about the prevalence of agricultural, household, or other burning, and potentially of fossil fuel combustion by automobiles or industries. As discussed herein, a micro-body assemblage database may be referred to as a MAD database. While a single property of a given object may not provide sufficient discriminatory power, the fusion of information associated with multiple measured properties of multiple objects and micro-body assemblages is more likely to lead to an accurate geographic or other object property prediction or characterization. The above-referenced prior work at the University of Tennessee utilized data obtained from human DNA for clustering. Other prior work at the University of Tennessee utilized content-based image retrieval (CBIR) (Z. Shen, Database Similarity Search in Metric Spaces: Limitations and Opportunities, MS Thesis, Electrical Engineering, University of Tennessee, August, 2004) and preferential image segmentation of electronic circuit components for clustering (Y. Pan, Image Segmentation using PDE, Variational, Morphological and Probabilistic Methods, PhD Dissertation, Electrical Engineering, University of Tennessee, December, 2007). A resultant image database may be referred to herein as a content-based image retrieval database (CBIR). Also, the University of Tennessee has reported in non-patent literature on automated classification of diatoms and the use of principle component analysis methods for identification of environmental signatures of micro-body assemblages which include pollen.

Data coding methods for a plurality of multi-dimensional databases that are compatible with the present similarity-based indexing and search methodology support an analysis and exploitation of the correlations between micro-body assemblage data and location/feature and other property prediction data. Databases and related modeling software may utilize the proposed methodology including, for example, a plurality of databases comprising electrical/electronic/acoustic data (ESD) and micro-body material assemblage data (MAD) from the literature and CBIR databases maintained for objects of interest as will be discussed herein.

Modeling software and related database technology may lead to an inference of the geographic location and characteristics of points of origin and time/season related data using measurements of object properties and associated trace materials and comparison to reference and historical data. One embodiment comprises a software system that supports collection and modeling activities using a variety of modalities, including electrical, spectral (electromagnetic, mass spectra, optic and acoustic) and isotopic measurements of samples, and analysis of micro-bodies having entrained charcoal particles and other micro-bodies including, for example, diatoms and foraminifera or other micro-bodies, as well as images to identify points of origin and, possibly, time-varying data, for example, transit routes of objects from a point of origin (for example, associating oil droplets in a body of water or particulate matter in air with the site of an oil spill or leakage or a source of air pollution). In these applications, objects collected from field operations can be analyzed and characterized using, for example, electrical, chemical, acoustic, mechanical and isotopic measurements of components, and information about trace contaminants. Each measured property can help locate or identify the source of the object or predict other object properties if reference data with known or measured characteristics are available. Trace materials, such as micro-body assemblages including charcoal particles and other micro-bodies including pollen, diatoms, and foraminifera, can be used to identify, if not a point of origin or transit, then characteristics of that location such as an expected distribution of plant species, soil types, temperature and humidity conditions, and the nearby presence of water bodies, ancient lake beds, and outcrops of sedimentary rocks. As explained above, the relative abundance of charcoal in micro-body assemblage samples and the morphologies of charcoal particles can provide clues about the prevalence of agricultural, household, or other burning, and potentially of fossil fuel combustion by automobiles or industries. While a single property may not provide sufficient discriminatory power, the fusion of information associated with multiple measured properties is more likely to lead to an accurate object characterization and prediction of other object properties that may further include date and time data.

Similarity-based search technologies are incorporated into database and modeling software embodiments that support model-based inference of properties of objects from a database of information gathered from previously analyzed objects and samples. An anticipated structure of this software is provided in the subsection title “Detailed Discussion of Embodiments.” The software may operate as an overlay to a Commercial off-the-Shelf (COTS) database product that supports SQL queries across a standard network interface. The MySQL database software from Oracle may be utilized for this purpose; (refer to http://www.mysql.org/ for further information).

Electrical, electromagnetic and acoustic measurements, specifically time- and frequency-series data, exist in the published literature for certain objects such as previous fire events and residual objects. Multivariate statistical analysis, based upon principal component analysis (PCA) methods, can be used to extract the data most relevant to localization from the raw measurement data. Analysis of spectra using PCA for identification of chemical compounds and inference of origin has been very successfully employed in the field of analytical and food chemistry. The extracted content can be utilized to organize a database of information about objects in a manner that supports nearest neighbor search strategies based upon measures of similarities between objects. The methods are highly efficient because of the in-memory database index and dynamic indexing methodology discussed below. The enabling information technologies for this approach are described, for example, in U.S. Pat. Nos. 6,741,983, 7,272,612, and 7,454,411 incorporated by reference herein as to their entire contents for all purposes. An overview of one of the technologies is provided below in the subsection titled “Multivariate Statistical Analysis and Data Clustering”. Another method indexes information using partitions determined by entropy and adjacency measurements or functions. These patented methods have been used to construct several different types of databases that implement similarity-based search strategies, including databases of human DNA profiles used for forensic identification and have also been applied, as will be described below for content-based image retrieval (CBIR) databases.

Trace particle assemblages in sediment and soil samples are used by forensic scientists to infer the geographic and environmental characteristics or properties of samples from crime investigations. For example, micro-body assemblages in a soil sample on a shovel, for example, containing charcoal, pollen and the like can provide information on existent vegetation and vegetation fire residuals that may help pinpoint a grave site. This forensic work is discussed, for example, in D. A. Korejwo, J. B. Webb, D. A. Willard, and T. P. Sheehan, “Pollen analysis: An underutilized discipline in the U.S. forensic science community,” presented at the Trace Evidence Symposium sponsored by the National Institute of Justice and held August 13-16, 2007 in Clearwater Beach Fla. Micro-body assemblages including especially charcoal particles or pollen and, for example, foraminifera, and other microfossils can similarly help to establish the origin or travel route of a suspect or object involved in a crime. Such micro-body assemblages are also studied to understand past climate and environmental change, and in the case of pollen, in research on human allergens, crop pollination, and honey production. The use of microfossils in these various applications has produced literature on microfossil types and related micro-body assemblages that can be used to help develop properties of objects of interest. Of particular importance are studies of modern pollen and diatom distributions carried out to help calibrate records of past environmental change obtained by studying stratigraphic sequences of microfossil assemblages preserved in modern and ancient lake and marine basins; see, for example, L. M. Kennedy, S. P. Horn, and K. I. Orvis, “Modern pollen spectra from the highlands of the Cordillera Central, Dominican Republic,” Review of Palaeobotany and Palynology 137 (2005) 51-68; K. A. Haberyan, S. P. Horn, and B. F. Cumming, “Diatom assemblages from Costa Rican lakes: An initial ecological assessment,” Journal of Paleolimnology 17 (1997) 263-274, and C. Shen, K.-B. Liu, L. Tang, and J. T. Overpeck, “Numerical analysis of modern and fossil pollen data from the Tibetan Plateau,” Annals of the Association of American Geographers 98 (2008) 755-772. These so-called “modern calibration studies” have the goal of relating modern micro-body assemblage data to patterns of climate, vegetation, and other environmental variables—in which we use the relationships between modern micro-body assemblages and environmental and geographical factors to predict properties of objects of interest.

Modern micro-body assemblages are usually expressed as percentages of particles, for example, charcoal particles, classified by taxonomy or (when taxonomy cannot be resolved) by morphology; see, for example, M. D. Enache and B. F. Cumming, “Tracking recorded fires using charcoal morphology from the sedimentary sequence of Prosser Lake, British Columbia (Canada),” Quaternary Research 65 (2006) 282-292. The micro-body assemblage data can be treated as vectors and can be readily processed using the similarity-based information retrieval and modeling technologies discussed herein.

Source data on modern micro-body assemblages are available in the published literature, in unpublished documents such as student theses, and in a few databases developed for paleoclimate research. Information on these trace contaminants in modern sediments and soils and in paleolakes (ancient lakes now dry) of the study region, which are a source of airborne micro-bodies (such as volcanic ash) is obtainable from published literature and from field study. Although the utility of these trace contaminants for source and property attribution has been established, research efforts aimed at formalizing the automated use of information on modern micro-body assemblages and their environmental controls are provided according to one embodiment. Automated identification methods for, for example, micro-body assemblages comprising pollen grains and prior pollen studies in a given region may comprise portions of a database for pollen, a similar database provided for charcoal particles and a similar database for each type of micro-body assemblage of interest.

Micro-body assemblage data (MAD) collection may comprise another database collection and its coding. Geographical locations (coordinates) and environmental characteristics of samples, including climate factors, vegetation, presence of wetlands, soil types, land use, and other factors and properties may be included in the database. Again, available literature and other data sources potentially include high resolution aircraft imagery, forest fire tower, traffic monitoring, building security and satellite and related spectra and other data collection. Because micro-bodies such as volcanic ash, smoke particles and pollen can be transported long distances by wind, micro-body assemblages may be determined, for example, by the matrix of vegetation and natural structure types over fairly broad areas. Diatom assemblages may likewise be influenced by paleolakes upwind from the sampling site. To tie micro-body samples and objects to geographic and environmental conditions suggests populating related assemblage databases with information on a regional context as well as local characteristics of a particular sampling site.

A reference core database may preserve both assemblage information and citations to the sources, and, when it is available, linkage to supporting imagery for later comparison to target samples using content-based image resolution CBIR. Assembly of a sufficiently large reference database for accurate estimation of geographic characteristics and location is likely to require a program of environmental sampling to supplement data available in the literature and world-wide databases. Such a program may include samples from various world regions and eventually require automated sample analysis. An automated particle analysis system may require computer-aided image analysis and interpretation, acquired using either optical or electron microscopy or other imaging techniques not limited to X-ray and magnetic resonance imaging. Some work has been done on the automated classification of trace micro-body particles using image analysis. Automated systems are limited to use in a few laboratories engaged in research on automation; see, for example, J. Bollmann et al., “Automated particle analysis: calcareous microfossils,” in Image Analysis, Sediments and Paleoenvironments, P. Francus (ed.), Kluwer (2004) 229-252 and I. France, A. W. G. Duller, and G. A. T. Duller, “Software aspects of automated recognition of particles: the example of pollen,” in Image Analysis, Sediments and Paleoenvironments, P. Francus (ed.), Kluwer (2004) 253-272. Automated identification approaches typically rely upon artificial neural networks, which require extensive tuning using training sets and do not readily extend to accommodate new information.

European researchers have reported some success for identification of micro-body assemblages including diatoms. Identification of micro-body assemblages depends upon 3D characteristics that are inferable by manipulation of particles within a sample to obtain images of individual grains in various orientations, and rates of correct identification tend to be in the mid-80% range; see, for example, C. Chen et al., “Feasibility study on automated recognition of allergenic pollen: grass, birch and mugwort,” Aerobiologia 22 (2006) 275-284. Microscopy techniques such as refocusing to move the focal plane through the grain and acquiring a sequence of images can be useful, and the issues are less severe with scanning electron microscopy (SEM) and, possibly, with confocal image acquisition techniques; see, for example, H. Seppa and K. D. Bennett, “Quaternary pollen analysis: recent progress in palaeoecology and palaeoclimatology,” Progress in Physical Geography 27, 4 (2003) 548-579. Partial and overlapping images of particles are also prevalent, and obscure features that are needed for identification. A human operator can reorient and separate particles during observation (currently not feasible in automated microscopy systems but likely within the near future). An evolving technology for image processing and object recognition, preferential image segmentation, can be used to isolate features of interest from image data, such as pollen and diatoms, for use in queries to an image database. This technology is described in Y. Pan, J. D. Birdwell and S. M. Djouadi, “Preferential image segmentation using trees of shapes,” IEEE Trans. Image Processing, 18 (2009), 854-866, and may be an initial processing step for images of pollen and diatoms, prior to multivariate statistical analysis and storage or search in a database. Other known methods of image enhancement, registration, segmentation and feature extraction are available in the published literature and can also be used.

Measured properties of objects and entrained materials can be utilized, in conjunction with a database that supports search and retrieval based upon similarities among objects, to provide information about points of origin and time varying data about the object and to predict further properties. A body of information exists in the literature on the geographic distributions of some micro-bodies including microfossils, particularly pollen grains and diatoms, and on the environmental characteristics and properties of sample collection sites.

Trace analysis of pollen samples in forensic botany relies upon the correlations between micro-body assemblages, or the distribution of pollen grains across plant taxa, and source location and environmental characteristics. The assemblage is simply a vector of percentages of grains from each taxon found in a sample and is determined by manual analysis in a laboratory. Micro-body assemblage data for pollen and other microfossils may be utilized along with raw data such as images obtained by optical or electron microscopy. Identification of micro-bodies including charcoal particles and microfossils may be automated using a combination of Content-Based Image Retrieval (CBIR) and a reference database of typed images, with a transition to candidate automated identification system(s).

CBIR is a relatively new technology that has undergone rapid evolution over the past decade. An early application is discussed by A. Oakly; see A. Oakly, “A Database Management System for Vision Applications,” Proceedings of the Conference on British Machine Vision. vol. 2, 629-639 (1994), using Manchester Visual Query Language to distinguish two microfossils using a projected circular Hough transform in a microfossil image. The effectiveness of CBIR is dependent upon the range of image content that must be searched. For example, human facial recognition systems tend to exhibit reasonably good performance with adequate lighting and standardized profiles and image geometries (for example, the full facial views with flat lighting that are typical of drivers licenses and ID cards). In contrast, a facial recognition system that uses actively controlled cameras in an outdoor environment to acquire data from uncontrolled subjects tends to have a poorer performance.

As will be explained herein, CBIR in one embodiment is based on prior work on preferential, or model-based, image segmentation, and can be used to focus upon those portions of an image (for example, apertures and sculpturing on pollen grains) most likely to lead to accurate identification, and the use of similarity-based search strategies to determine reference objects with similar features. A successful system may identify and focus upon micro-bodies including charcoal particles and microfossils including pollen grains (or diatoms), identify each grain, and determine the frequencies of occurrence of each type. These data can then be used in a search for similar micro-body assemblages within a micro-body assemblage database (which as described above may comprise a plurality of databases, one for each micro-body), to provide data relevant to a source or other properties of an object of interest such as a smoke particle, man-made fire remnant or volcanic ash. Development of a large-scale trace analysis capability based upon entrained grains in objects, for example, including charcoal, requires acquisition and coding of additional reference data from the published literature. An automated micro-body assemblage identification system as described herein can substantially reduce the manpower requirements for reference data acquisition and allow better coverage of geographic regions of interest.

Electrical, electromagnetic and acoustic properties of object components are expected to be indicative of object properties and may provide an object signature. A database is known for emission of black body radiation from known objects, and this database may be utilized as one example of a property of an object. Acoustic or noise emission is another example of a property exhibiting a spectrum which may be related to further properties such as pressure, temperature, object type, such as a type of vehicle, and vary over time. These measurements comprise, but are not limited to, spectral data and have been shown to correlate to an object such as a human being, a structure or a fire event or its residuals as discussed above. Multivariate statistical analysis, based upon principal component analysis (PCA) or partial least-squares (PLS) methods, can be used to extract the data most relevant to localization from the raw measurement data.

The extracted content can be utilized to organize a database of information about properties of objects and to predict further properties in a manner that supports nearest neighbor search strategies based upon measures of similarities between objects. Information about similar reference objects from the database can then be utilized to estimate or predict properties of an object and the object itself. New objects can be treated as new information and incorporated, with appropriate review, into the forensic database, to be used to link to and identify future objects with similar properties. This allows the reference data collection to grow as analyses are performed and maintain currency. The database search and retrieval methods are highly efficient because of the in-memory database index and dynamic indexing methodology as discussed below. The database may include metadata, such as information about date and time, and source data such as manufacturer and/or vendor, or location of an object when this information is available. A database search and retrieval operation provides access to the metadata of objects similar to an unknown target object, which provides inferences about the point of origin for each new object analyzed and searched. By similarity, as used in the application, is intended, by way of example, the probability or likelihood that two objects are related by at least one property.

Multivariate statistical analysis presumes that one or more portions of the measured characteristics or properties of an object can be expressed as a vector, or ordered sequence, of numbers (of which a large number may be required). Values indexed by time (time series) or frequency (spectra) are two examples of such data. A measured concentration or intensity as a function of position, time or another independent variable, for example, as is used in chromatography or electrophoresis, is another example. While such an ordering may not be appropriate for all measurements of a sample (for example, images, time- or frequency-series, and genetic sequence data are not always encoded in a single vector), it is usually possible—and preferable—to represent one type of measurement as a vector, where several measurement vectors (of different types) may be associated with each object. Methods such as principal component analysis and clustering algorithms (for example, k-means) can be applied to each type of vector, and the methods described by the above-referenced patents incorporated by reference can be used to create databases (indexed collections of measurement data) for each vector type.

A single measurement vector, for example, an electrical spectrum, may not by itself be especially informative of an object's identity, physical and electro-acoustic properties, or location or time varying activity. However, the measurement can narrow down the set of possible origins or other properties, typically by excluding those reference objects that have substantially different spectra, and other measurement types can be used to refine the inferred source or property. As an example, stable isotope ratios, determined using a mass spectrometer, can be used to associate objects with a particular location, and are utilized in forensic science; see, for example, S. Benson, C. Lennard, P. Maynard, and C. Roux, “Forensic applications of isotope ratio mass spectrometry—a review,” Forensic Science International 157 (2006) 1-22. Entrained pollen and diatoms can also be used for inference of geographic location (or expected characteristics of the location); see, for example, L. A. Milne, V. M. Bryant Jr., and D. C. Mildenhall, “Forensic palynology,” in Forensic Botany: Principles and Applications to Criminal Casework. H. M. Coyle (ed.), 217-252. CRC Press, Boca Raton, Fla., 2005 and M. Leira and S. Sabater, “Diatom assemblages distribution in catalan rivers, NE Spain, in relation to chemical and physiographical factors,” Water Research 39 (2005) 73-82.

Most chemical elements occur in the environment as a mixture of isotopes. Stable isotope ratios of Hydrogen, Carbon, Nitrogen, Oxygen, and Sulphur are commonly analyzed in forensic science; see, for example, S. Benson et al., “Forensic Applications of Isotope Ratio Mass Spectrometery—a Review,” Forensic Science International 157 (2006) 1-22. Isotope ratios are reported relative to the light isotope as delta values relative to a standard, which are the deviation, in percent, from the standard. A vector of agreed-upon isotope ratios can be utilized to construct an index of stored reference objects and naturally fits within the framework of an embodiment of database technologies as described herein, for example, by creating an index for each isotope ratio. Thresholds can be utilized to exclude reference objects from search results if their recorded results are significantly different from the tested sample's values—or accept (meaning one cannot exclude the reference object based upon its isotope ratio), or leave undetermined if no isotope ratio is available. The results can be combined by returning only those reference objects that cannot be excluded using at least one isotope ratio, and that are not excluded using any isotope ratio for further analysis.

The use of stable isotope ratios, in addition to the spectral data, points to combining search results across multiple indices. This provides input to the design of an information storage platform: Objects should be indexed using multiple and disparate characteristics, such as electrical, chemical spectra and stable isotope ratios, and search results should utilize all of the available indexed data which may be all of ESD, MAD and CBIR among other data. According to an aspect of an embodiment, first, multivariate statistical analysis and clustering are utilized to extract information that is most relevant to the object from raw data sources, which may assist in determining location or time varying activity with respect to an object. Second, search and retrieval operations are based upon the similarities between objects, and not an exact match to a value in a stored record's field, or inclusion of that value in a specified range. Third, models can be applied to the metadata, or properties, associated with reference objects to predict properties of interest for a target sample.

The models may be single variate or multivariate and may be utilized to interpolate the value of value set of a property of an object of interest for values for the same property of similar objects retrieved from the databases. In this case, the property may be, provided by way of example only, a location or source of manufacture or distribution, a type of material consumed in a fire or used to accelerate or extinguish a fire, the classification of a micro-body or smaller microscopic particle, the type or class of a vehicle, the type or state of a weapon or other device carried within luggage, or the state or status of equipment or a process in an industrial setting such as an electric utility or chemical plant. The models may also be statistical, or Bayesian, such as a Bayesian network or belief network that relates a set of objects retrieved from the database with an object of interest. This is but one set of exemplary models that are graphs or directed graphs, as are well known in the field of computer science which can also be used. In this case, the predicted property may be, for example, the likelihood, probability, or belief that the target object and the retrieved objects satisfy a postulated relationship, or a set of likelihoods, probabilities, or beliefs determined across alternative hypotheses. If only two hypotheses are postulated, this set of likelihoods may be expressed as a likelihood ratio. Examples include the identities, command structure, or purposes of individuals, devices, software components, or other entities such as businesses that communicate via a network, genetic relationships among individuals and, optionally, phenotypes such as the susceptibility to or ability to cause or prevent disease, whether among plants, animals, or single-celled organisms, and the detection of individuals or other entities engaged in an illicit enterprise. The embodiment further may include image information, which is necessary for identification of pollen, diatoms, and other trace microfossils that may be found on objects including, for example, vehicles and individuals.

The models may incorporate optimization. One example is the utilization of optimization such as least squares or maximum likelihood optimization methods that are well-known in the art to determine a model that best fits the values of one or more properties of objects that result from a database search. This optimized model can then be used to predict at least one property of a target object. A more complex example is the use of a database of time series data or data indexed by frequency, such as spectra, obtained from measurements made on a physical process such as a chemical reactor or gas turbine. In order to determine or localize a worn or failed component in the process one may record measured data in a database that supports similarity-based or nearest neighbor search at various times during the operation of the process. These recorded data form a historical record of the operation of the process, and recorded measurement data from a current operating period can be utilized as a target in a search of the historical data. Results returned from a search have similar characteristics to data from the current operating period and can be used to model or predict the status, such as wear or failure mode, of a component in the process, or to model or predict the future behavior of the measured process. For example, similar time series data from the historical record can be utilized to develop an impulse response model of the process in order to predict future process state as a function of time and/or future measurement values. In this case, the impulse response model can be obtained by solving a quadratic programming optimization or convex optimization problem. Other methods such as dynamic matrix control, quadratic dynamic matrix control, model predictive control, and optimization of linear matrix inequalities can be utilized. See, for example, S. P. Boyd et al., “A new CAD method and associated architectures for linear controllers,” IEEE Transactions on Automatic Control, 33 (1988) 268-283, C. E. Garcia and A. M. Morshedi, “Quadratic programming solution of dynamic matrix control (QDMC), Chemical Engineering Communications, 46 (1986) 73-87, S. Boyd et al., Linear Matrix Inequalities in System and Control Theory, Society for Industrial Mathematics (1997) ISBN 978-0898714852, and M. Morari and J. H. Lee, “Model predictive control: past, present and future,” Computers and Chemical Engineering 23 (1999) 667-682. Approximations to the optimal solution can also be utilized. See, for example, S. Wei et al., “Applications of numerical optimal control to nonlinear hybrid systems,” Nonlinear Analysis: Hybrid Systems 1 (2007) 264-279, and B. Moerdyk et al. (including inventor J. Douglas Birdwell), “Hybrid optimal control for load balancing in a cluster of computer nodes,” Proc. of the 2006 IEEE Int. Conf. on Control Applications (2006) 1713-1718. Switching strategies may be embedded in a constrained continuous space representing the fractions of loads to be transferred between each pair of computational elements; see, for example, Bengea et al, “Optimal Control of Switching Systems,” Automatics 41, 11-27 (2005) and Bengea et al., “Optimal and Suboptimal Control of Switching Systems, Proceedings of the 42^(nd) IEEE Conference on Decision and Control, 5295-5300 (2003). A compartmental model can be utilized, where parameter identification is performed using well-known methods in the art to fit model parameters to measurement data; see M. H. Plawecki et al., “Improved transformation of morphometric measurements for a priori parameter estimation in a physiologically-based pharmacokinetic model of ethanol,” Biomed Signal Process Control 2 (2007) 97-110. The database would be queried to determine the measurement data from the historical record that are most similar to current conditions, determined by measurement, such historical measurement data utilized for parameter identification. In these cases, the predicted or inferred characteristics of a target object are utilized to subsequently control a physical process.

Materials exposed to a local environment may entrain small airborne particles, among which are pollen, charcoal particles, and, for areas near current or ancient lakes or seas, diatoms and foraminifera. Of these particle types, pollen is most commonly used in forensic applications. Diatoms have been shown to be effective markers for the origin of objects; see, for example, M. Leira et al., “Diatom Assemblages Distribution in Catalan Rivers, Nebr. Spain, in Relation to Chemical and Physiographical Factors,” Water Research 3 (2005) 73-829. If diatoms are aligned flat, i.e. with the polar axis parallel or possibly at right angles to the image plane, symmetry is helpful, more so than for pollen grains: see, for example, S. Fischer, “Symmetry Based Indexing of Diatoms in an Image Database, icpr, vol. 2, 15^(th) International Conference on Pattern Recognition, (2000), 895-898. See also E. Joynt et al., “An Image Database for Diatom Identification and Nomenclature—Focus on Metadata,” Journal of Paleolimnology 22, 109-114 (1999) for a discussion of a relational database for communication of taxanomic and ecological information including an image table, a nomenclature table (DIATCODE), a collections table, a count table and a methods table. A common use of diatoms in forensics is determining circumstances of drowning. Micro-body assemblages including charcoal particle and other micro-bodies such as pollen in the assemblages are less often considered in forensic applications. However, studies of modern microfossil distributions carried out by paleoenvironmental scientists to calibrate records of long-term change have shown that all of these particle types, charcoal, pollen, diatom, etc. show geographical patterns and environmental relationships that make them potentially useful for sourcing objects in forensic applications. Airborne dust in arid regions may contain diatoms and foraminifera from the surface sediments of dry lakes that can potentially help to source the dust, given databases being available on the micro-body assemblages in dry lakes of the region. Marine diatoms may also be found in dust of arid regions. In dry environments, diatoms, foraminifera, and charcoal particles may be more resistant than pollen grains to destruction through oxidation, giving them special importance for sourcing objects in some regions of the world.

For all four types of particles, the characterization of a sample is by the assemblage of micro-bodies including microfossils present, which can help to “fingerprint” a source region and thus predict other properties. For pollen, L. A. Milne et al., “Forensic Palynology,” Forensic Botony: Principles and Applications to Criminal Casework 2005, 217-252, CRC Press, recommend identification of 200 to 1000 pollen grains to obtain an adequate characterization. Identification is based upon the physical characteristics of pollen grains, including grain size, shape, and positioning of apertures (openings in the surface through which the genetic material is transferred), sculpturing (ornamentation or patterns on the surface), wall composition and preservation (which depends upon the environment at the collection site), and wall structure. The physical characteristics are observed after chemical and physical processing to remove other materials, and can utilize either optical or electron microscopy. The micro-body assemblage data is characterized by the frequency of occurrence of each type of particle or grain in the sample and can therefore be represented as a vector. If the vector is considered to represent the frequency of occurrence of each grain species represented in a reference database, it is sparse, since a relatively small number of species (compared to the content of the database) are likely to be present in each sample. In some cases, the presence of a unique pollen type in a sample may provide a locational fingerprint, if that particular pollen is produced by a plant species with a very narrow distribution. Similarly, it is known that passive directional spectral data collection may distinguish one form of vegetation from another in an ESD database.

At present, grain identification relies upon features visible through a microscope or in images of grains and human expertise to correlate those features with grain type and taxonomy. Some digital repositories or identification keys exist, for example the Newcastle Pollen Collection and the key to pollen of the Bahamas (www.pollen.mtu.edu). The quality of images, and the extent to which these resources can be used for identification, also varies. Most pollen analysts use these digital resources, or printed volumes of pollen illustrations that predate digital efforts, only as guides to identification, supplemented by physical collections of reference pollen slides that analysts develop by sampling herbarium specimens of plants of their study areas, and processing them chemically to prepare slides that are similar to slides prepared from environmental and forensic samples. However, as image quality in digital collections improve, and as microscopy itself comes to rely more on image analysis, image databases will become more widely used in pollen identification as well as in the identification of other microfossils. In the European community for automatic identification and classification of diatoms, a project known as ADIAC reports identification rates of 80-90%.

A micro-body assemblage may further comprise a heavy metal. A. Facchinelli et al. have studied the regional variability in northern Italy of heavy metals in soil samples, for example, chromium, cobalt, nickel, copper, lead and zinc using MVS and GIS-base approaches; see A. Facchinelli et al., “Multivariate Statistical and GIS-based Approach to Identify Heavy Metal Sources in Soils,” Environmental Pollution, 114, 313-324 (2001). Measures of chemicals and contaminants in dust and surface soil may provide a fingerprint to link samples to types of places to an actual location such as northern Italy or to other samples.

The design of a grain database may employ Content-Based Image Retrieval (CBIR) using measures of similarity between segments of images. These segments can be grains, or features on the surface of grains (sculpture and apertures). One advantage of retrieval based upon similarity measures is the potential to correctly identify degraded grains, or grains from images that are partially obscured by other grains or artifacts. Prior work includes the extension of CBIR to preferential image segmentation and identification using content models based upon trees of shapes; see, for example, Z. Shen, Database Similarity Search in Metric Spaces: Limitations and Opportunities, MS Thesis, Electrical Engineering, University of Tennessee, August, 2004 and Y. Pan, Image Segmentation using PDE, Variational, Morphological and Probabilistic Methods, PhD Dissertation, Electrical Engineering, University of Tennessee, December, 2007. Metadata associated with stored images of grains can include the location and date of collection, as well as other descriptive data. Similar database and identification and characterization approaches can be utilized for pollen, diatoms, and foraminifera. Studies of microscopic charcoal particles as indicators of fire regimes have focused on total particle abundance per volume or weight of sediment, or in comparison to pollen abundance based on visual quantification of particles on slides prepared for pollen analysis; see, for example, K. Anchukaitis and S. P. Horn, “A 2000-year reconstruction of forest disturbance from southern Pacific Costa Rica. Palaeogeography, Palaeoclimatology, Palaeoecology 221 (2005)35-54 and L. M. Kennedy, S. P. Horn, and K. H. Orvis, “A 4000-yr record of fire and forest history from Valle de Bao, Cordillera Central, Dominican Republic,” Palaeogeography, Palaeoecology, Palaeoclimatology 231 (1996) 279-290. The feasibility of automatic quantification has been demonstrated; see, also, L. M. Kennedy, S. P. Horn, and K. H. Orvis, “A 4000-yr record of fire and forest history from Valle de Bao, Cordillera Central, Dominican Republic,” Palaeogeography, Palaeoccology, Palaeoclimatology 231 (1996) 279-290. Newer approaches have focused on particular charcoal morphologies that can indicate the type of material burned, which may provided more detailed environmental clues. Both approaches to charcoal quantification may be accommodated in an embodiment of the present database.

The application of the present embodiment is not limited to fire detection, forensics, fire residual determination and the like. Other applications include financial, data mining, criminal activity pattern detection and disease modeling or disease discovery.

For example, with respect to a financial application, time series can be stock or other equity prices, and the correlations between time series can be used as a measure of similarity (for example, R²) in statistics. One would look for exploitable patterns—equities that move as a group, or that may have correlation delayed in time with respect to another. PCA can be used to cluster similar time series, corresponding to equities that behave similarly. The model can be a method of portfolio analysis—in other words, an optimal allocation strategy to determine the best allocation of investments. See also data mining, below.

With respect to data mining, the method can be used to mine information in a database—looking for clusters of similar behaviors. This can be purchasing patterns of consumers, or of businesses (e.g., raw materials). A model can be applied to some or all of the members of a cluster (similar objects) to determine their relationship. The model can be a Bayesian or belief network, or a pedigree, which is a graph of hypothetical relationships between objects. Relationships can be flows of capital or goods/services between members of a cluster (or a subset of a cluster). Multiple hypothesis testing or maximum likelihood estimation can be used to determine which relationships (models) are more (or which is most) likely. Similarity-based search can determine objects in a database that are most similar to a target, or objects most similar to each other. By exploiting the high speed of the database, one can perform a search of the database against itself to determine a list of the most similar clusters or subsets of objects and apply models to these to test hypotheses. The results of this procedure can be used to add information to the database, which could be “metadata”, or data about the data (clusters), mining the database for knowledge.

With respect to detection of patterns in criminal activity, behaviors (objects in the database) may be suspicious transactions that are observed or reported. Hypotheses may be the possible organizational structures of a criminal network or conspiracy. This could also be interactions among computers or communications devices such as nodes in a communications network, where the goal is detection of organized behaviors. Transactions could also be medical records or medical data such as medical claims for reimbursement from insurance or Medicare, where the goal is detection of patterns of activity indicative of fraud.

With respect to disease modeling or drug discovery, attributes can be measureable quantities about objects, such as individuals, and properties that are inferred by the models and can be an expression of characteristics of the objects, such as disease or drug resistance. This relates to the classic application of Elston and Stewart (R. C. Elston and J. Stewart, A General Model for the Genetic Analysis of Pedigree Data, Human Heredity 21 (1971), 523-542) and models derived from their approach with genotypes and phenotypes.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of a method and apparatus for predicting object properties will be discussed in the context of the following drawings wherein:

FIG. 1 is a Venn diagram showing selected reference data from three similarity searches and their juncture or overlapping region.

FIG. 2 is a graphical overview of the architectural components of a client-server database supporting similarity-based indexing, search and retrieval according to one embodiment using multiple search engines.

FIG. 3 provides sample “s” attribute vectors associated with stored objects and a target object denoted by “x” defined by first and second principal component vectors forming a cluster.

FIG. 4 illustrates a modeled behavior for the cluster of FIG. 3 using data from selected reference objects (o, *) to estimate the property's value for target object x of FIG. 3.

FIG. 5 provides sample images from a database of over one thousand images for rowing competitions.

FIG. 6 provides images retrieved by a CBIR process of one embodiment for a racing shell.

FIG. 7 shows a projection of image attributes onto two principal component axes, showing data which satisfy the search criteria within the central area and marked as such.

FIG. 8 shows a scree plot of cumulative contributions made by a plurality of principal components.

FIG. 9 shows Mahalanobis scores for depicted principal components of 10,000 data profiles for alleles in d13s317 and d16s539 in nine clusters.

FIG. 10 shows the make-up of the second principal component for the dl 3s-d16s data set.

FIG. 11 shows the make-up of the third principal component for the d13s-d16s data set.

FIG. 12 provides a graphical depiction of a database index constructed from the results of multivariate statistical analysis and a ranking strategy.

FIG. 13 provides a histogram of times required to search a 100,000 DNA profile database for an exact match to a profile.

FIG. 14 illustrates automatic recognition of pollen grains using similarity search.

FIG. 15 shows partition of a 2-level indexing tree wherein FIG. 15A shows a partition at level 1; FIG. 15B shows a partition at level 2; and FIG. 15B shows a final partition.

FIG. 16 shows a triangle inequality.

FIG. 17 shows a search method using reference points wherein FIG. 17A shows a reference points P₂ and P₃; FIG. 17B shows reference points P₁ and P₂; and FIG. 17C shows reference points P₁ and P₂ from FIGS. 17A and 17B.

FIG. 18 shows a performance comparison of two data extraction methods.

FIG. 19 shows preferential image segmentation results wherein FIG. 19A shows a truck image from FIG. 19C and FIG. 19B shows an electronic component taken from FIG. 19D.

FIG. 20 shows a tree search structure used in dynamic indexing.

FIG. 21 shows examples of M spectral data of a spectral database of between 0 and 20 kHz frequency.

FIG. 22 shows the M spectral data samples of FIG. 21 displayed as reduced-order attribute vectors.

FIG. 23 shows an indexing surface (hyperplane) used at a node of an M spectra data indexing tree.

FIG. 24 shows a dynamic index recursive construction.

FIG. 25 shows a circular graph of objects and associated information, for example, for a vehicle such as a car.

FIG. 26 shows information of the circular graph of FIG. 25 as element 1101, the information in the form of a tree-structured graph 1102 and as depicted within a circle in element 1103.

FIG. 27 shows three different circular clusters 1201, 1202 and 1203 with interlinking data elements shown between the circular clusters;

FIG. 28 shows a second example of an evidence tree of an on-screen graph representation of an embodiment of a system for predicting object properties including a circular image having a target object at the center of the circle and links to evidence data.

FIG. 29 shows an example of the evidence tree of FIG. 28 for a target object linked to evidence trees for a plurality of objects and associated data of a MAD and an ESD database.

FIG. 30 shows a block diagram of a data modeler platform.

FIG. 31 shows a block diagram of exemplary system components.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

Embodiments of a method and apparatus for predicting object properties using similarity-based information retrieval and modeling will be described with reference to FIGS. 1-31. One embodiment promotes the use of a federation of database indices, for example, those corresponding to electrical spectra, isotopic ratios, pollen, charcoal, diatoms, and foraminifera, all of which can be searched using similarity-based methods for reference samples with characteristics similar to those measured for an object. Each database index may be implemented by a search engine, utilizing a common commercial off-the-shelf database or a file system as a persistent storage repository. A search management process may be utilized to coordinate requests from clients for information across all database indices, and for interpretation of the search results to present a coordinated response to each user. This is illustrated in showing a Venn diagram of the selected reference data from three similarity searches. The combination and utilization of information from searches involving multiple attributes of the newly acquired target object of interest can refine the estimate of properties related to the object's geographic origin, as illustrated by the central intersection of the three depicted similarity searches shown as ellipses in FIG. 1. Similarity measures can be used to cluster by similarity and then apply model(s) to clusters to test hypothetical relationships—with or without a target object or object of interest. The object of interest may be a member of the database. For example, one may perform searches for similar objects contained in the database for all members of the database. See, for example, the third method of U.S. Published Patent Application No. US 2008-0040046 of Feb. 11, 2008, for a method to detect and identify relationships among family members in a mass disaster setting. Of course, the embodiment of FIG. 1 is merely illustrative and the figure is not limited to three but may involve hundreds or thousands of similarity searches. A database can be dynamic, with new information being added to the database, which data can change the membership of clusters and the validity of hypotheses. Dynamic indexing, as discussed below, is used to test nodes of a database tree and cluster data of multiple dimensions into smaller and smaller groups.

Reference data that are tagged with properties such as the circumstances of manufacture or distribution and points of origin can be utilized to infer point of origin information for a newly acquired target object. Deterministic or static models may be utilized to infer these properties an predict other properties. Example models include methods known in the art of curve fitting and interpolation, least-squares models, and principal component analysis (PCA). Maximum likelihood estimation methods (e.g., likelihood ratios) may also be utilized to provide a quantitative statistical assessment of the relative support for competing hypotheses. Likelihood ratio analysis may require investment in the development of a reference data set because such methods are Bayesian—they rely upon a priori statistical information about the probability that samples with specific characteristics will be found at the stated locations (or with these characteristics). Other approaches such as artificial neural networks, belief networks and fuzzy logic may be used to advantage. Dynamic machine learning methods such as reinforcement learning can be used to update behaviors of the models based upon newly acquired knowledge.

Existing technologies that enable the development of database and modeling capabilities to support source identification from trace microfossil and electrical analyses are utilized in existing systems for the indexing and storage of data related to human identification. The technologies are utilized in one embodiment to implement a more general type of database (the Core Database) that supports utilization of correlations between observed attributes and properties of reference objects to model and predict the site properties and contexts of newly acquired objects of interest.

One embodiment of a database is an Electrical/Acoustic Spectra Database (ESD) that supports the comparison of objects of interest to a reference collection based upon measured spectral characteristics and inference of properties and contexts of one or more target objects from data associated with similar reference objects. As described above, such a database may comprise black body and spectral emission at acoustic, electromagnetic and optic radio frequencies (where “acoustic” may comprise audible, sub-audible and ultrasound spectral emission of objects. Data may be collected from reference objects at all frequencies and over time and at varying temperature and atmospheric pressure.

A second embodiment of a database is a Micro-Object Assemblages Database (MAD). MAD supports comparison of micro-object data derived from expert study of objects of interest to stored reference micro-body assemblages, and inference of properties and contexts of one or more target objects from physical, geographic and/or environmental property data associated with similar reference assemblages. Both databases are merely exemplary of other databases that may be employed to advantage such as a content-based image retrieval database (CBIR) database as will be described further herein. The databases will support storage of data objects containing identifying features (spectra for the ESD, assemblages for the MAD and images for CBIR), source information (such as when/where/from what a specimen was collected), and information on site properties and context that can be used to infer geographic location and/or time-based activity. Multiple ESD, MAD and CBIR databases may be implemented using the Core Database technology to form a plurality of hierarchical and relational databases to improve the accuracy of the inferred properties of target objects and their probability of occurrence.

For example, domestic farming activities may benefit from an ESD database as described above. Since the technique is also sensitive to body temperatures within the field of view of the receiving antennae, the tracking and corralling of livestock such as cattle over ranges, entering corrals, and even wandering outside boundaries could be beneficial, particularly for those in the milking industry. This technology could also determine thermal signatures of livestock, humans, or predators so that such animals can be monitored and undesired intruders identified. Thermal signatures of plants and vegetation may signal a problem of oncoming drought or plant disease.

Microwave speed, fire and intrusion detection capabilities can also be used to detect the movement of vehicles along roads and tunnels and shipboard and airplane movements along channels. Signature analysis could identify the traffic flow and thermal signatures differentiating between cars, trucks, motorcycles, planes, trains, boats and other vehicles or vessels. This technique could also identify stalled vehicles or those catching fire, particularly in high density underground tunnels.

The ESD and the MAD and other related databases may have a client-server architecture, as described in the subsection titled “Design Overview”, so both client and server software may be utilized. An example of information on site properties and context is the geographic location, date, and time of collection. However, the information may be descriptive, especially when reference materials are extracted from the literature; examples include local and regional vegetation, and the proximity to paleolakes. This information may exist in the primary literature, but it also may have been obtained from other sources. Data coding can be designed to provide information in a form that can be utilized to infer the characteristics of the source of a newly acquired sample. It is anticipated that a significant portion of the client and server software will be common to both (or several) database applications. The initial databases and related software provide a base platform for other database applications in the future, including support for micro-body including charcoal particle and microfossil recognition. The database server and associated data processing methods may be implemented, for example, using the C++ or a similar programming language, and a client device may be implemented using Java, C# or other programming language suitable for implementation of a user interface or client program.

Tagging in the ESD and MAD databases may uniquely identify the objects and selected properties. Multivariate statistical analysis and clustering will play a key role in identifying nearest neighbors and clustering. Matlab may be utilized to provide a rapid prototyping capability to assess design and data analysis alternatives. Clustering opportunities may determine an efficient indexing and search method to be used for the database. One approach is illustrated below, by way of example, using DNA profile data in the subsection titled “Multivariate Statistical Analysis and Clustering” (MVS). Electrical and acoustic spectral data are, at a fundamental level, vectors that can be processed and aggregated using methods based upon principal component analysis (PCA) and clustering algorithms.

The indexing method may be entropy/adjacency, and is not limited to MVS or PCA. These methods may be used in combination. Entropy measures the ability of a node in a database index to segregate data in a collection (subset of the database) into two or more portions of roughly the same size or complexity. Dynamic indexing as discussed below provides efficient clustering of data into smaller and smaller clusters or data groups. Adjacency measures the ability of a node in a database index to impose structure on these portions that preserve similarity—meaning that similar objects are in portions that are similar (a hierarchical data model where if you want to search for an object near (or contained in) portion A, and if the neighborhood of results of interest is sufficiently large, you also want to search for objects in portion B (or multiple portions) where the data in portion B is more similar to the data in portion A than other data in the database. There is a trade-off between entropy and adjacency—our prior work found that a substantial gain in adjacency can be obtained at the expense of a small decrease in entropy (or increase, depending upon the sign that is used—either information gained from applying the query or series of queries, or entropy of the resulting portions).

Examples of indexing methods include: (a) indexing of sequences, including text (words) or characters, using a measure of edit distance, which, when properly defined is a metric (and therefore the metric space indexing methods described in Z. Shen's MS thesis work). (b) indexing of sequences of numbers using a measure of the correlation between the sequences, such as R² or Mahalanobis distance, or inner product of vectors. (c) A similarity between labeled fragments (such as STR DNA) can be defined as described in our database patent family. (d) indexing can be based upon similar hierarchical decompositions of objects, such as the tree of shapes and shape descriptions of segments in images, as used by Y. Pan in his PhD dissertation and the IEEE Trans. Image Processing paper, and (e) 3-d structures such as organic compounds and nanoscale structures can be indexed based upon their structural similarities, using, for example, a spanning tree of an annotated graph representing the structure, with term rewriting rules to determine similarities in structure (creating, in some applications, an equivalence relation on the set of possible spanning trees and a measure of similarity between equivalence classes). This can also be used to define the similarities in the structural descriptions of microscopic particles such as charcoal, pollen, and forams. (f) Finally, indexing can be based upon metric space methods by embedding objects in a metric space (or associating objects with elements of a metric space) and using an inverse of the metric, such as an additive or multiplicative inverse, evaluated upon a pair of objects, as a measure of the objects' similarity.

As micro-body assemblage data are collected during a survey, they may be archived in a form that can be utilized to populate an operational MAD database. Micro-body assemblage data and their associated information may be coded for insertion in the MAD database. There exist alternate methods of data coding for information related to assemblages to determine a coding framework that best suits the needs of the end user community and supports the requirements of the extant similarity-based indexing and search technologies.

There are significant sources of micro-object, for example, charcoal particle and microfossil, assemblage data in the literature and elsewhere, and data can be gathered, for example, for property and characteristic dimensions. MAD may store associated environmental and geographic property information for source identification or attribute application. Additional data collection and analysis efforts can augment the data available in the literature. Automation of portions of the trace particle analysis process may be achieved utilizing a combination of preferential image segmentation and a database of typed reference images that supports content-based image retrieval (CBIR). One or more databases may be developed for Trace Particle Image Recognition (TPIR). For example, charcoal particle and microfossil image data can be collected as part of a literature survey and utilized to evaluate concepts and databases that are soon available or under development.

Design Overview

This section provides an overview of the design of a database that implements efficient similarity-based, or nearest-neighbor search. This means that a request to search the content of the database will return identifiers for objects that are within a specified distance to a reference, or target, object but may not precisely match the target's characteristics. One way to define the term “distance” uses a metric that is defined on the stored objects, and that can quantify the dissimilarity between two stored objects. A metric satisfies the triangle inequality, and this fact can be exploited in the design of a database index. See, for example, the previously cited MS thesis by Z. Shen and the section below titled “Content-Based Image Recognition”. However, a measure of distance does not have to be a metric. For example, see U.S. Pat. Nos. 6,741,983; 7,272,612; and 7,454,411 for more general indexing structures that rely upon concepts of “distance” that are not all metrics.

Several metrics may be defined and utilized to satisfy a request to search the database, in which case the returned identifiers refer to objects that are within a specified distance to the target object with respect to each metric. There are performance advantages that can be achieved when the stored objects can be represented as values in a vector space and/or when a metric can be used as a measure of distance, or to define the similarity of objects, but this is not necessary and is not feasible in all applications. For example, images may be represented as values in a metric space that is not a vector space, and DNA sequences and profiles require a looser interpretation of the term “distance” (using mappings that do not satisfy the triangle inequality). Even in these applications, high performance databases have been implemented using the methods developed at the University of Tennessee as described in the issued patents. To enhance readability, terms that refer to components and concepts that have particular meaning in the design are printed in italics.

FIG. 2 provides a graphical overview of the primary architectural components of a client-server database supporting similarity-based indexing, search and retrieval using multiple search engines. The database (or preferably a collection of databases) utilizes a client-server architecture that provides simultaneous services to multiple clients. Architectures have been implemented that leverage the advantages of parallel computation, using both clusters of computer nodes and single nodes with multiple processors and cores. A commercial off-the-shelf (COTS) database 200 or a computer or network file system (referred to herein as a “COTS Database”) can be utilized for persistent storage, while the high-performance in-memory indexing and search technologies are implemented in Search Engines 210(1) to 210(n) that operate as cooperating threads or tasks within the overall architecture. A Search Manager 220 provides coordination between the Clients 230(1) to 230(m), a COTS Database 200, and Search Engines 210(1) to 210(n), as well as the initial connection protocol for the Clients 230(1) to 230(m). The application can be parallelized by allocating separate computational resources to each component, such as a Search Engine 210(1) to 210(n), by allocating multiple computational resources to any component, as occurs in a Search Engine 210 that utilizes multiple threads, or using a combination of these methods. Communications among components in a parallel implementation may be effected using a communications medium such as a computer network or using shared memory.

A simple example illustrates the design concept. Suppose a database contains 14 objects, and that each object is described by a vector of attributes that are real-valued. Preprocessing of data can be by data extraction or filtering, such as low or high pass filtering, or Kalman filtering or extended Kalman filtering (both using a model of relationships among members) or parameter identification. These attributes can be analyzed using multivariate statistical analysis (MVS), for example, using principal component analysis (PCA) as described in a subsequent section, to determine a smaller dimensional (two in this example) subspace of the attribute space in which the objects can be clustered into groups (three in this example). In this simple example, assume that a measure of similarity between objects, using the projections of the attribute vectors onto the principal component basis vectors for the subspace, is the inverse of Euclidean distance between points. This situation is illustrated in FIG. 3 showing projections of sample ‘s’ attribute vectors associated with stored objects (o, *) and an unknown target object (x) onto the subspace defined by the first and second principal component vectors. The projection shows three clusters of objects, of which one contains objects most similar to the projection of the target object's attribute vector, a cluster of five “*” points at the right of FIG. 3 with the target object's vector x in the center. In FIG. 3, the rightmost cluster in the figure (containing data points corresponding to five objects) is the cluster of greatest interest.

The right-most cluster in FIG. 3 illustrates the effect of a similarity search operation on the database. The point depicted by the ‘x’ symbol in FIG. 3 corresponds to a newly acquired target object, and the search operation identified five stored objects that are most similar to the target using the similarity measure defined by the combination of a projection operation onto the subspace and the Euclidean distance metric. Suppose the objective is to estimate a property of the target object from the property's values for similar objects. This is illustrated in FIG. 4, where the vertical axis represents the value of a single real-valued property. An algorithm is applied to the similar objects' data, as represented by the gridded surface, to provide an interpolated or inferred estimate of the property for the target, represented by the vertical height of the ‘x’ symbol in FIG. 4 (toward the center of the curved planar space).

A feature of the technical solution of the embodiment is the ability to rapidly select objects from a large database that have similar attributes to those of a target object of interest, even when the database contains millions to hundreds of millions of objects. This enables the rapid modeling and prediction of a target object's properties using data from the set of similar objects.

Referring to FIGS. 5-7, a slightly more complex example further illustrates this process. A database was assembled of roughly 1,000 images taken by Birdwell at rowing competitions, along with attributes extracted from each image. The similarity-based database index was constructed using the attribute value set and utilized to rapidly identify objects (images) within a specified metric distance from a target image. FIG. 5 shows four sample images from the database, illustrating the variety of image data. The top left image in this figure was utilized as a target object in a similarity-based search and retrieval operation, yielding images satisfying a specific (fairly stringent) match criterion. The images retrieved using this search are shown in FIG. 6.

FIG. 7 shows a plot of projections onto two principal component axes of the attributes of all images stored in the database, with each image shown as a dot or space. In this example, the retrieval operation was to find images that had attribute values within a specified I₁ norm of the attribute value of a target image, where the attribute is vector-valued. The database index allowed the search operation to be narrowed down to the set of dots shown in a box, where the darker outlier * (RED) dots represent images that satisfy the final similarity constraint. One measure of the efficiency of the database search operation is the relative size of the set of outlier * (RED) dots compared to the set of (green (within the square)) colored dots, since red dots outside the square represent images that had to be visited by the search engine to rule out their inclusion in the result set (within the box). To continue the analogy with modeling, the images that correspond to the green dots (in the square) shown in FIG. 7 would be used in a predictive model to infer properties, such as the classification of a pollen grain or diatom, in a target image. The rapid and efficient identification of this set of images is highly desirable, since image operations, compared to operations on the database index, are substantially more costly. As can be seen in this example, the search methodology is highly effective.

In these examples, the images in the database were processed by extraction of vectors of attribute values, which were further analyzed using principal component analysis, as described in the section titled “Multivariate Statistical Analysis and Data Clustering”, to determine projections onto principal component subspaces most conducive to clustering of like images and indexing. The remainder of this subsection provides a brief overview of the concepts utilized to construct database indices that support similarity-based search and retrieval methods, after which the basics of the statistical analysis and clustering procedures utilized in the indexing method are presented.

Views

One aspect of one embodiment of the database architecture is the View, which provides the basis for the implementation of a Search Engine. Referring to FIG. 2, there may be a plurality of Search Engines 210(1) to 210(n). The COTS Database 200 of FIG. 2 can contain an arbitrary collection of stored objects, which can be arranged in a relational structure that, although a factor in the performance of the database, does not have a direct relationship with Views or Search Engines 210. For each View, a specification determines the set of objects in the COTS Database 200 that can be accessed using that View, called the Viewable Set. This means that in general not all stored objects may be accessible from a single View. This is reasonable, since some objects can have, for example, images that are indexed using information derived using a View, while other objects do not.

A View includes a specification for an Attribute Set, which is the set of attributes that can be extracted from any object in the Viewable Set. An attribute value can be any data structure; examples include vectors, sets, and trees of data objects. For example, a “tree of shapes” description and organization of the segments that correspond to a portion of an image can be an attribute value. In a DNA database the attribute value may be a DNA base-pair sequence, an edit sequence, or a collection of alleles associated with loci within an organism's genome. At its most trivial, an attribute value is a number or a symbol. The Search Engine 210 that utilizes a View indexes its attribute values, and the attribute values are stored in the Search Engine's address space. Attribute values are derived from stored objects and can be utilized for rapid comparison of the objects, but note that while two identical objects will have identical attribute value sets, identical attribute value sets do not imply that their corresponding objects are identical.

A View defines an Extractor, which is an algorithm that can be applied to a stored object within the Viewable Set to produce one or more attributes, each of which is a value in the Attribute Set. The Search Engine associated with a View typically applies the Extractor to all stored objects that are in the Viewable Set (as they are stored), and therefore contains within its address space at least one attribute value for each stored object.

A View defines at least one Partition on the Attribute Set. Each Partition defines a Function from the Attribute Set to a finite set of categories, or labels, and optionally to a metric space. A metric space is a set of values that has an associated distance function d(x,y) that assigns a non-negative number, the distance, to every pair of values x and y in the metric space. The distance function must satisfy three properties: (i) d(x,y)=0 if and only if x=y for all x and y, (ii) d(x,y)=d(y,x) for all x and y, and (iii) d(x,y)+d (y,z)>=d(x,z) for all x, y, and z. If the metric space is defined, the Partition assigns a category or label to each element of the metric space. Typically, this assignment is accomplished in a manner that allows an efficient implementation of an algorithm to compute the category associated with any value in the metric space. The Search Engine 210 utilizes Partitions to implement a “divide and conquer” search and retrieval strategy, isolating possible matches to a specified request to search to subsets of categories and implementing a tree-structured index to leaf nodes that contain attribute values and identifiers of stored objects. The advantage of this approach over the capabilities offered by traditional database technologies is that it supports indexing methods that allow similarity-based search and retrieval and depend upon both multivariate and multi-valued (set-valued) quantities; two examples are described in U.S. Pat. Nos. 6,741,983; 7,272,612; and 7,454,411.

The Function typically implements one or more data reduction steps, such as are described in the section titled “Multivariate Statistical Analysis and Data Clustering”. The intent of the data reduction steps is to determine a minimal set of attribute values that enable efficient partitioning of the stored objects into disjoint collections of roughly equal size, and, where feasible, to cluster like objects by assigning similar attribute values. Therefore, the Function can effect a transformation of the information associated with the stored object into a useful form that enables at least one of clustering, partition and indexing. As described later, this is typically accomplished through a combination of proper selection of data encoding methods and statistical analysis, either using previously acquired data or using a dynamic process as new data are acquired and stored.

Properties

Properties are similar to Views but are not utilized to construct indices or Search Engines 210. A Property has specifications of a Viewable Set of objects and an Attribute Set of attribute values that those objects may possess. Unlike Views, attribute values associated with objects are provided by an external source rather than computed by an Extractor. For example, an attribute value can be a manufacturer ora geographic coordinate where the object was found. A typical application would attempt to infer property values for newly acquired objects using a search for similar objects stored in the database 200 and a model of how property values vary or correlate with other attributes of the object.

Search Engines

Search Engines 210 implement high-performance indices for the database 200 of stored objects that allow objects similar to a specified target to be located and retrieved. Each Search Engine 210 corresponds to at least one View into the stored data. (An example of a search engine that utilizes two views is provided in U.S. Pat. No. 6,741,983, where a partition can utilize information from two DNA loci.) Two possible Search Engines 210 implement indices of electrical, electromagnetic, optic or acoustic spectra data, and micro-body, for example, charcoal particle or microfossil, assemblage data. A Core Database 200 functionality is capable of supporting more advanced Search Engines 210. For example, a first Search Engine 210 may be defined that indices surface sculpturing on pollen grains, allowing reference pollen data to be retrieved that describe grains with similar texture to a target sample. Other Search Engines 210 may be defined to index the data based upon overall shape, size, and physical attributes such as apertures. Still other Search Engines 210 may be defined to index the data on spectral characteristics among acoustic, electrical, optic or electromagnetic data received, for example, via a passive directional antenna.

Referring again to FIG. 2, a Client 230 can specify a search context that requires similarity in size, shape, apertures, and texture, which would be interpreted by the Search Manager 220 to require searches using multiple indices (Search Engines) 210 and subsequent analysis and combination of the results. There may be a plurality of Clients 230. For example, a reference to a stored object could be returned only if it were similar to the target object in at least three of the four attributes. Another Search Engine 210 could implement an index into spectral data obtained from physical components, retrieving information about stored objects of that type that have similar spectra. Information describing both types of objects (and others) can be stored in the underlying COTS Database 200, whose primary functions are to implement persistent storage and provide the usual capabilities of a relational database.

Each Search Engine's index is tree-structured. Operations begin at the tree's root, and paths of descent from each node of the tree are excluded if no possible matches to the current search specification and target can exist on those branches. Leaf nodes of the tree contain attribute information and references to objects within the COTS Database 200. The attribute data can be used to exclude many referenced objects as possible matches, leaving a small number of objects that require additional analysis—and possibly retrieval from the COTS Database 200—to determine the final set of matches. In some cases it is possible to maintain a complete copy of each object within the address space of the search engine, if this is required for high performance applications. The Search Engines 210 can support multi-threaded operation, allowing the simultaneous processing of requests from multiple clients, or from a single client that has submitted several requests. In one embodiment, write operations, which store new data in the COTS Database 200 or modify the index structure, block other queries to maintain the integrity of the index structures. These operations require coordination across Search Engines 210, or within the Search Manager 220, because a write initiated in one index may require modification of data within another index that can access the same object(s). An alternate embodiment allows non-blocking writes with subsequent coordination among processes that access overlapping information sets to resolve conflicts or inconsistencies. Referring to FIG. 2, the Search Manager 220 is shown connected to both Clients 230 and Search Engines 210.

Models

The utility of the similarity database lies in its ability to predict characteristics of newly acquired samples using a cumulative database of previously gathered and analyzed materials. It is unlikely that an exact match will be found to any particular target, but it is possible to model Properties of the new sample using the Properties of similar stored samples. This may be accomplished using interpolation and either deterministic or statistical models, which may be either single- or multi-variable models, or more complex models may be utilized, as described earlier. The similarity search becomes the first step in this process by restricting consideration of stored objects to those that are most similar to a target object.

A Model includes a specification of Properties, which identifies the Viewable Set of stored objects to which the Model can be applied and the Attribute Set that can be utilized by the Model. The model also specifies an Algorithm to be used to compute values of a subset of the Attribute Set for a target object, given a set of stored objects and the target object. The Model may incorporate an optimization method or an approximate optimization method to adapt or fit the Model to a subset of stored objects in the Viewable Set. Note that the attribute values can include computed estimates of errors, in addition to the estimates of values such as geographic location, manufacturer, or geographic characteristics such as expected nearby land features. Note also that geographic location and characteristics could be utilized in an interface to a Geographic Information System (GIS) such as ARCinfo.

An important feature of a Model is its ability to adapt to new information. As additional objects are acquired, analyzed, and stored in the database, their associate data are available to the Model's Algorithm. A search for stored objects and inferred information relevant to a new object is expected to provide more precise answers as additional data are acquired and stored in the database system. In all cases, the Model should utilize current stored data from objects that are most similar to a target object's characteristics to develop inferences.

Filtering can be used to assess the quality of a model's fit to data (degree with which it accurately describes the relationships among the objects). For example, one can examine the residuals or innovations processes in filters to determine how accurately the filters model or match the behavior of the group of objects. These filtering methods are well-known in the field of electrical engineering (subfield of systems and controls), and are also utilized in statistics and business applications.

Similarity measures can be used to cluster by similarity and then apply model(s) to clusters to test hypothetical relationships—with or without a target object. The target may be a member of the database 200. For example, one may perform searches for similar objects contained in the database for all members of the database 200.

SUMMARY

A purpose of the present design is to provide a predictive modeling capability that is based upon collected reference data. The collection is dynamic: As new objects are stored in the system, the quality of inferences improve. The design is not bound to a single modeling paradigm: Models may be as simple as a linear interpolation or a lookup in a database table, but they may be much more sophisticated, using multivariate data and optimization, and restricted only by what can be coded in a standard programming language to utilize the structured data associated with stored objects. Similarity based search enables the Models to utilize the data that are most similar, using multiple factors, to a target object, and, since all stored data are available to the Search Engine 210, the most recent data are utilized, allowing the predictive modeling capability to remain up to date at all times. The patented and patent pending technologies that have been developed at the University of Tennessee allow high-performance similarity-based search strategies to be effectively implemented even for very large data collections, with demonstrated scalability into the hundreds of millions of stored data objects and demonstrated performance of hundreds to ten thousand completed searches per second utilizing readily available off-the-shelf hardware.

Multivariate Statistical Analysis and Data Clustering

Now a method that uses multivariate statistical methods to determine clusters is described that can be utilized to partition portions of a database into groups with similar properties and of roughly equal size; see, for example, U.S. Pat. No. 6,741,983. As a result, this method generates partition information that can be incorporated within or associated with an arbitrary node in a tree-structured database index. The figures are from applying this method to DNA profile data based upon amplification of short tandem repeat (STR) loci.

The raw data associated with objects to be stored (or retrieved) in the database 200 are represented as vectors of numbers. For the DNA database, these numbers are binary and represent the presence (binary “1”) or absence (binary “0”) of a specific STR allele at a locus. This encoding scheme is often used for measurements that assign categories, such as “rough”, or “elliptical”, or that represent the presence or absence of features in raw data, such as signal peaks. Measurement can also yield floating-point, or real, values, in which case the raw values, either scaled or un-scaled, can be utilized. Principal Component Analysis (PCA) of the data is utilized to decrease the dimensionality of the raw data by identifying directions of maximum variation in the original data and transforming the data to a new and lower dimension coordinate system. For use in a database, coordinates are desired that result in discernable and clusterable patterns in the reduced data space. Distinct clusters, usually less than 10, can be established using a clustering method, such as k-means; see, for example, J. T. Tou and R. C. Gonzalez, Pattern Recognition Principles, Addison-Wesley, Reading, Mass. 1992 or k-modes or k-prototypes; see, also, Z. Huang, “Extensions to the k-means Algorithm for Clustering Large Data Sets with Categorical Values,” Data Mining and Knowledge Discovery 2, 283-304 (1998). The membership of each cluster is then identified and recorded. In the DNA application, each STR profile belongs to one and only one of these clusters. Thus, all of the DNA profiles in the database can be partitioned into these clusters. This partitioning occurs at each level of the tree-structured database index, enabling a “divide-and-conquer” approach to data retrieval. When searching for data matching a target's characteristic, the target can be classified into one of these clusters at each level of the tree. A subsequent search can be restricted to members within this cluster. This reduces the search problem by approximately one order of magnitude at each level of the index tree, as the search descends the tree.

Principal component analysis (PCA) is a method for analyzing a matrix of high dimension, revealing correlated information and representing it with a much lower dimensional matrix without sacrificing significant information contained in the original data matrix. PCA involves a rotation from the original frame of reference to a new frame of reference, whose axes are given by the principal components from the PCA. The first principal component represents the direction along which the variance exhibited by the original data points is maximized and is made up of a linear combination of the original variables. The second principal component, orthogonal to the first, represents the direction along which the remaining variance is maximized. Additional principal components are defined in a similar fashion.

To implement PCA, the Singular Value Decomposition (SVD) method can be used to decompose the data matrix, X, into the product of three matrices, in which the columns of the matrix, V, are referred to as the “principal components” of the SVD of the data matrix, X; see, for example, G. Strang, Linear Algebra and its Applications, 4^(th) ed., Brooks Cole, Florence, Ky., 2005. Thus,

X=UΣV ⁷

where U and V are orthogonal matrices, and E is a diagonal matrix with non-negative elements arranged in descending order. The columns of V, being the principal component vectors, represent the coordinates or basis of the axes of the new frame of reference. The ratio of the square of each singular value to the total sum of squares of all the singular values represents the percentage to the total variation contributed by each principal component. A Scree plot can be developed to show the cumulative ratio of this measure; an example is shown in FIG. 8.

Since the original data are assumed to be heavily correlated, and the singular values are arranged in descending order, one can make a decision as to how many principal components to keep in building the PCA model to represent the original data. The discarded data along the remaining principal components are regarded as less important and are ignored.

Each principal component is of unit length and orthogonal to all other principal components. The principal components are the columns of the right singular matrix, V, of the singular value decomposition (SVD) of the data matrix, X, above. Each principal component is expressed as a linear combination of the original variables, with the entries of the principal component expressing that particular linear combination. The absolute values of all entries are less than or at most equal to 1. Therefore, those entries with relatively large values indicate that the corresponding original variables exert greater influence along this principal component's direction. The variables with correspondingly heavy weights are also the ones being correlated in the original data set.

If the columns of the data matrix, X, are not first mean centered, such that the mean of each treated column is zero, then the first principal component reflects the average values of the variables represented in the new principal component frame of reference. It is then the next few principal components that serve to differentiate between DNA profiles. Therefore, mean centering is an optional step that provides no additional capability and is not performed here.

After the principal components are found, each data vector can be projected onto each principal component. The projected vector is referred to as the scores vector for each sample. The length of the scores vector indicates how closely aligned each sample of that data is to that principal component. The bigger the projection, the better the principal component represents the data vector. Thus, data vectors with comparable projections onto a principal component can be regarded as “similar” to each other, with respect to that principal component. Those data vectors with high projected values onto the principal component indicate that these data vectors are highly aligned with the principal component, therefore representing more of the original variables which are heavily weighted in that principal component. Similarly, projections of data vectors onto each of the succeeding principal components can be carried out to get the scores and their projections onto those principal components.

Because of the different degree of variation exhibited by the data vectors along the different principal components, normalization is necessary, such that normalized distances from the origin to each projected point can be meaningfully compared. The Mahalanobis distance measure is employed, in which each projection is divided by the corresponding singular value.

The Mahalanobis distance scores are calculated as follows:

Mahalanobis Scores=XVΣ ⁻¹ =U

where X represents the original data matrix, and U, Σ and V are from the SVD of X. Postmultiplying X by V performs the projection of the rows of X (DNA profiles) onto the principal components, with the projected vectors represented with respect to the principal component axes. Postmultiplying XV by Σ⁻¹ scales each column of XV by the inverses of the corresponding singular values contained in E. A two dimensional plot can be used to show the scores onto principal components i and j. In plotting the scores plot in, say PC2 and PC3, it is the row entries from the second and the third columns of the Mahalanobis scores matrix (the U matrix) that are plotted in a 2-d plot. Henceforth, the Mahalanobis scores shall simply be referred to as the scores. An example of such plot is shown in FIG. 9, which shows the scores for 10,000 DNA profiles with alleles in the d13s317 and d16s539 short tandem repeat STR loci onto the 2^(nd) and 3^(rd) principal components. It is in such a scores plot that clusterability of the sample points is examined; there were nine clusters in this case.

An aspect is why certain principal component axes, taken for particular portions of the raw data, exhibit good clustering properties, while others may not. The answers lie in both the statistical properties of the data and the encoding method. For DNA profiles, loci with allele probabilities concentrated at just a few alleles (2 to 4) are good candidates for generation of distinct clusters. The reason is that with most of the data having only a few alleles, the joint 2-loci allele distributions that were used tend to concentrate in those allele pairs with relatively high probabilities of occurrence. Thus, fewer, and more distinct, clusters tend to be formed. The encoding also plays a role. For example, discrete variables that are numerically encoded tend to enforce a more distinct separation between clusters.

Consider the allele distribution patterns in a large DNA STR data set. If for a specific locus, the probability densities concentrate in only a few, for example 3 out of 10, alleles, then the majority of the DNA profiles in this data set will have alleles for that locus, corresponding to those with high probability densities. However, some, though in the minority, will still have alleles with low probability densities. Thus, the variance among the DNA profiles associated with this locus will be higher than those where a large number of alleles have comparable but low probability densities. The large variance exhibited by this part of the data will be picked up by the leading principal components of the original data matrix. Recall that the principal components of a matrix X are given by the right singular vectors of X, after SVD (the columns of the matrix, V). For a matrix without any column mean centering, the first principal component generally gives just the average of the overall data, and therefore is not useful in differentiating between the points. The second principal component, therefore, is the one that gives the direction along which the variance exhibited by the original data matrix is maximum; the third principal component gives the direction that captures the next maximum variance, after the component along the first and second principal component have been subtracted offfrom the original data matrix.

As a result of the above reasoning, the first few leading principal components after the first should exhibit a large contribution from those original variables (i.e. the alleles) where the probability densities is large. FIG. 10 and FIG. 11 show the make-up of the second and the third principal components of the 10,000 DNA profiles at the d13s317 and the d16s539 loci. It is clear from these figures that two alleles are the dominate factors at each locus in the scores for each principal component. Notice the opposite signs of alleles 11 and 12 of each locus in each principal component (PC). If a cluster of the scores of the DNA profiles projects highly onto the positive direction of PC2, then it means that most members within this cluster have the presence of allele 12 (the second tall bar of FIG. 10) of d13s317 and allele 11 of d16s539 (the first tall bar of d16s539 of FIG. 10), and the absence of allele 11 in the first locus and the absence of allele 12 in the second locus, since the signs associated with the latter pair are negative.

The nine distinct clusters can be established analytically by the k-means clustering algorithm, which typically works well for naturally occurring data. Other clustering algorithms known in the literature may be used. Clusters identified by k-means were validated by visual inspection for the DNA database. Memberships within each cluster were analyzed to determine the similarity among the members. It was observed that clusters differ in the combination of alleles at each of the 2 loci that are dominant. From the make-up of the principal components, the projections of members of each cluster onto each principal component can be predicted by looking at the pattern of alleles present and absent in the members of the clusters.

Because the most probable alleles for the d13s317 locus are alleles 11 and 12, and the most probable alleles for d16s539 are alleles 11 and 12, the clusters correspond to DNA profiles with various combinations of presence or absence of these dominant alleles at these four positions. Boolean expressions can be written that form logical tests on the data to determine cluster assignment. For example, a Boolean expression testing for membership in one of the clusters is “(d13s317-allele11) and not (d13s317-allele 12) and not (d13s539-allele 11) and (d13s539-allele12)”, where the terms in parentheses are logical variables that are true if the corresponding allele is present and false otherwise. Boolean expressions can be rewritten in various forms and simplified according to methods that are well known from the fields of Boolean algebra and logic circuit design.

The Boolean expressions that describe each cluster form a test that can be applied to any data record. These tests can be utilized to form a decision tree that sequentially applies tests to assign the record to a cluster, and therefore to a descent path through the database index, using the methods of inductive inference that were pioneered by J. Ross Quinlan; see, for example, “Induction of decision trees,” Machine Learning 1:81-106, 1986. In this case, each node of the database tree that utilizes clusters derived from the multivariate statistical analysis method would contain a decision tree specifying the sequence of tests to be applied to DNA profile targets at that node, and the database tree can be rewritten by expanding these nodes and incorporating the decision tree's nodes into the database tree. A graphical depiction of the database index that results is shown in FIG. 12. FIG. 12 is a graphical depiction of a database index constructed from the results of multivariate statistical analysis, combined with a ranking strategy based upon a measure of similarity between objects, to address the needs of various forensic applications.

This method has been utilized for both DNA profile and image indices (as discussed later). PCA is utilized to reduce the volume of the raw data, and to focus attention upon a small number of data attributes (principal components) that cause the data to form clusters, resulting in a decomposition of the database. It is possible, however, to utilize too much information, in which case clustering will not be achieved. For example, from our previous work, the use of PCA methods to analyze allele information for 16 loci simultaneously does not exhibit clustering. Thus, a key discovery of this work is that it is important to limit the application of PCA methods to a portion of the available information to achieve good clustering results. A subsequent data fusion step can be employed to combine information found by searches of multiple indices, in a manner similar to the methods utilized in commercial databases to combine the results of searches of two or more tables. In the DNA database used to illustrate the method, the information at each level of the database index tree was limited to allele data for two loci.

The factors that determine good clustering and the reason for the clustering have been presented and briefly discussed. Successive partitioning using different Views (2-loci combinations in this example) at each round very rapidly reduces the number of objects present within each cluster. Partitioning by PCA clustering can be inserted into suitably chosen non-terminal nodes of the database index tree, to search for matching data objects against a target object. After passing through this node, the number of candidate objects that remain to be searched is reduced by approximately one order of magnitude. (Seven to nine clusters usually resulted from PCA clustering of the DNA profile data, in which the clusters are about equal in size.)

A very high level of performance is typically achieved using a database constructed in this manner. First, the database's tree-structured index can be maintained in memory, as well as vectors of attributes for the stored objects. Second, the operations that must be performed at each node of the index are a small number of vector inner products (to obtain the scores for a search target for each principal component used by the node), followed by evaluation of a set of Boolean expressions involving a small number of comparisons. Depending upon the complexity of the application, search times for exact matches of microseconds to 10s of milliseconds are feasible for a database that resides completely within the computer's memory, with longer times required for inexact (similarity-based nearest neighbor) search. The methodology exhibits good scalability, with the largest runs to date involving over 100 million stored objects. Search times typically scale logarithmically with database size. The search time varies with the target and the portion of the database that must be searched (which is determined by the data associated with the target).

FIG. 13 shows a histogram, using run data from 1999, of search times for an exact search to a specified DNA profile (5019 runs) of a 100,000 DNA profile database, which an average search time of approximately 2.1 microseconds. The methodology can also be parallelized, as described in U.S. Pat. No. 7,454,411, using either a symmetric multiprocessing platform or a computer cluster.

Analysis of Micro-Particle Assemblages

While rare finds of dinosaur and mastodon bones justifiably attract public and scientific interest, knowledge databases related to past environments and the organisms that populated them come from data for much tinier fossils that are invisible or nearly so without magnification. Such microfossils are preserved in vast numbers in modern and ancient freshwater and marine sediments and soils found worldwide, and are widely used by researchers interested in a variety of themes related to the evolution of earth's environments and biota. In the micro-body assemblage database, there may be relational property data for four microfossils—pollen grains, charcoal particles, diatoms, and foraminifera—that are key indicators of past climate and environmental change during the Quaternary and earlier periods of earth's history. The utility of these microfossils as indicators of past environments stems from 1) their high abundance in nature and 2) the fact that their distributions are strongly correlated with geographical and environmental factors. These two characteristics make these microfossils important as trace particles in forensic and other efforts aimed at determining the source area of objects of interest.

Pollen grains are the structures produced by plants to transfer the male gametes to the female part of a flower. Pollen grains vary in size from about 5 μm to more than 200 μm, but most grains are between 20 and 50 μm; see, for example, R. O. Kapp, O. K. Davis, and J. E. King, Pollen and Spores, 2^(nd) edition (2000), American Association of Stratigraphic Palynologists Foundation. Pollen grains vary in shape, surface texture, and the number and arrangement of apertures through while the pollen tube can grow to effect fertilization. These variations follow taxonomy, and make it possible to identify the plants that produced the pollen grains. Most pollen grains can be identified to family or genus, and occasionally it is possible to identify pollen grains to species. Knowledge of the climate, soil, and other environmental factors necessary to support growth of the parent plant provides a basis for interpreting environmental conditions from the presence of the pollen grain. Although pollen grains of some wind-pollinated plants (such as pines) may be carried long distances by wind, many of these grains fall near the parent plant. Experimental and other studies reveal that many pollen types are not widely dispersed, such that their presence in an assemblage of pollen grains indicates that the plant was growing near the sampling site. Even given the potential long-distance dispersal for the pollen of some plants, the overall pollen assemblage, expressed as the percentage representation of different pollen taxa, has been demonstrated to show a high correlation to the vegetation and environmental conditions of the sampling area. This has been shown in numerous studied carried out by palynologists seeking to calibrate long-term pollen records of environmental change by studying the modern dispersal of pollen using pollen traps deployed in different habitats or by collecting pollen present in surface sediments and soils from different environments; see, for example, P. L. Fall, “Spatial patterns of atmospheric pollen dispersal in the Colorado Rocky Mountains, USA,” Review of Palaeobotany andPalynology 74 (1992) 293-313; C. P. Davies and P. L Fall, “Modern pollen precipitation form an elevational transect in central Jordan and its relationship to vegetation,” Journal of Biogeography 28 (2001) 1195-1210 and K. H. Orvis, “Modern surface pollen from three transects across the southern Sonoran desert margin, northwestern Mexico,” Palynology 22 (1998) 197-211. The utility of pollen grains in forensic applications is well established.

Charcoal particles and fragments ranging in size from that of pollen grains to entire tree trunks and branches are produced by the incomplete combustion of organic matter. Microscopic charcoal fragments are often tallied along with pollen grains in studies of pollen records of environmental change to provide an index of fire activity; see, for example, S. P. Horn, “Postglacial vegetation and fire history in the Chirripó páramo of Costa Rica,” Quaternary Research 40 (1993) 107-116 and M. J. Power et al. (75 total authors including S. Horn), “Changes in fire activity since the last glacial maximum: An assessment based on global synthesis and assessment of charcoal data,” Climate Dynamics 30 (2008) 887-907. Calibration studies have revealed that the abundance of microscopic charcoal particles correlates with both regional and local fire occurrence. Trace charcoal particles can complement forensic studies of pollen grains, particularly if particular charcoal morphologies can be discriminated and used to identify the type of material burned, by comparison to charcoal reference collections; see, for example, K. H. Orvis, C. S. Lane, and S. P. Horn, “Laboratory production of vouchered reference charcoal from small woody samples and non-woody plant tissues,” Palynology 29 (2005) 1-11. Samples prepared for analysis of pollen and charcoal may potentially contain distinctive soot carbon particles or carbon spheres derived from fossil fuel burning and may have forensic potential; see, for example, D. T. L. Alexander, P. A. Crozier, and J. R. Anderson, “Brown carbon spheres in east Asian outflow and their optical properties,” Science 321 (2008) 833-836.

Diatoms are unicellular algae with siliceous valves with intricate ornamentation allowing identification to the species level; see, for example, R. W. Battarbee, V. J. Jones, R. J. Flower, N. G. Cameron, I. Bennion, L, Carvalho, and S. Juggins, “Diatoms” in Tracking Environmental Change Using Lake Sediments, vol. 3, J. P. Smol, H. J. B. Birks, and W. M. Last (eds.), 155-202, Kluwer Academic Publishers, Dordrecht, The Netherlands, 2001. They are similar in size to pollen grains. Diatoms are found throughout the world in almost all aquatic environments, both freshwater and marine. Studies of diatoms in surface sediments of lakes show strong correlations with physico-chemical factors such as temperature, pH, nutrient levels (particularly N and P), and salinity. Known relationships between diatom assemblages and environmental conditions give diatoms potential utility in forensic and other cases in which materials are to be sourced by environment. In addition to diatoms in modern aquatic environments, windblown materials in drylands of the world may contain diatoms preserved in the sediments of ancient dry lakes. If diatoms in ancient sediments are distinct from those in modern wetlands, they may provide diagnostic information when found on objects of interest.

Foraminifera, or forams for short, are protists which produce tests (shells) that are in most cases composed of calcium carbonate. Characteristics of the tests provide the basis for identification. Forams are primarily found in the marine environment, and are important microfossils in studies of marine sediment cores. They are larger than the other microfossils discussed above—some can be up to 3 mm in size but most are less than 1 mm. Interpretations from foraminifera are based on relationships between species distributions and environmental conditions (for example, benthic or planktonic, and sea surface temperatures), and also on studies of oxygen isotope ratios in foraminifera tests. They have been used in forensic studies in comparing modern marine sediments and rocks; see, for example, Pye, K. Geological and Soil Evidence: Forensic Applications. CRC Press, Boca Raton, Fla., 2007.

For all four microfossils of interest, identification is based on comparison of specimens to reference material and published images and descriptions. Pollen, microscopic charcoal, and diatoms are examined on glass slides under high-power magnification. Identification by a human operator requires examining different focal planes (“focusing up and down”) to reveal the full, 3D characteristics of the particles. This often requires manipulating the particles to get them to turn over in a liquid mounting medium, to reveal all aspects of their structure and ornamentation. This is done by gently tapping the cover slip with a toothpick or other implement. Specimens mounted in a solid medium cannot be rotated, so only some characteristics may be available for identification purposes. If multiple examples of the same particle are present in the sample, it may be possible to base identifications on features that can be seen in different examples oriented on slides in different ways, though care must be taken that examples truly represent the same microfossil. Other processes may hinder identification. For example, microfossils may be deformed or damaged, either through environmental wear or during sample collection and processing. Human expertise can frequently account for these effects, but they can cause automated methods to fail. Image segment identification methods that are invariant to image deformation, or that can operate upon multiple small segments of the image that are linked by a segment model may overcome these difficulties. For example, the tree of shapes image segmentation models that we have utilized for preferential segment identification may be beneficial. We note, however, that a site may also be identified by the presence of pollen grains from rare plant taxa, or by grains that, even though they are damaged or deformed, have unique and distinctive features. An analogy in the Southern United States is the “dead possum” example—the tail is a unique characteristic by which any Southerner can identify the remains on the road, even if no other morphological characteristics used to identify mammals are visible.

The relationships that exist between microfossil assemblages and geographic and environmental factors provide the basis for using trace microfossils on objects of interest to source objects. For best results, databases must be constructed that capture a wide range of details about the sampling site and its surroundings. Only some of this information may be present in the original literature report. For all of the microfossils of interest, the very local conditions of the study site may only partially explain the modern assemblage. In the case of pollen, it has been shown that different pollen grains will have different source areas, with some types, as mentioned above, potentially dispersing over larger distances. A single pollen assemblage will be influenced by the abundance of plants with poorly dispersed pollen found close to the sampling site, and by the abundance of plants with well dispersed pollen found at some distance from the site; see, for example, K. D. Bennett, and K. J. Willis, “Pollen” in Tracking Environmental Change Using Lake Sediments, vol. 3, J. P. Smol, H. J. B. Birks, and W. M. Last (eds.), 5-32. Kluwer Academic Publishers, Dordrecht, The Netherlands, 2001. Thus, for understanding pollen assemblages it is important to know not just the local vegetation cover, but vegetation of the surrounding area. For this reason, we expect that it will be advantageous to construct databases that take into account the vegetation matrix viewed at different scales, for example, the vegetation at the sampling site itself, and within circular areas of different radii surrounding the study site. Prevailing wind directions may suggest that pollen source areas be modeled using ellipsoidal shapes that are elongated upwind from the sampling site. Prior studies suggest that whether sites are wooded or open has a strong influence on the size of source areas from which they receive pollen input, further complicating the effort that will be required to select, find, and code environmental property data appropriate for the interpretation of trace pollen assemblages.

For understanding trace diatom and foraminifera assemblages, important variables may be distance to a paleolake, a marine basin, or exposures of sedimentary rock known to include these microfossils, and may require development of a different system for coding data.

Where sufficient data exist in the literature, one may map microfossil assemblages to reveal spatial patterns that can be useful in sourcing objects of interest, as well as data gaps. “Isopoll” maps similar to those produced in numerous studies in the eastern United States and recently for Argentina might be particularly useful though the data density required may surpass what can be done without a program of sample collection, along with data collection for coding environmental variables; see, for example, P. J. Bartlein, I. C. Prentice, and T. Webb III, “Climate response surfaces from pollen data for some eastern North American taxa,” Journal of Biogeography 13 (1986) 35-57 and M. M. Paez, F. Schäbitz, and S. Stutz, “Modern pollen-vegetation and isopoll maps in southern Argentina,” Journal of Biogeography 28 (2001) 997-1021.

The interpretation of source area from trace microfossils may include the intersection of results based on different aspects of assemblages. Results could potentially be geographical coordinates, but in other cases may be ecological or environmental characterizations, such as, near a wetland area with local wetland plant species and regional if not local oak forest, and some biomass burning. Because charcoal fragments persist longer in sediments of drylands than pollen grains, they may potentially provide information on ancient as well as modern human impacts, if sediment high in charcoal from prehistoric human activities is mobilized by modern land use activities.

Finer scale geographic and environmental sourcing of objects of interest may include the examination of micro-bodies including microfossils in large numbers of environmental samples, as well as objects of interest. Automated methods of micro-particle identification, relying on content-based image recognition, may facilitate rapid and extensive environmental and object sampling.

Content-Based Image Recognition (CBIR)

Automated identification of objects such as micro-particles or micro-bodies using image analysis requires isolation of image segments corresponding to each micro-body object and comparison of each segment's data against a reference database to identify stored image segments with similar properties. This process is illustrated in FIG. 14, where an electron micrograph of a collection of pollen grains is first segmented (highlighted grain), followed by extraction of the image segment data to search a reference database for similar images (middle) tagged with metadata, to generate a count of grains of each plant (right), which, once all the counts have been computed, can be use to generate the assemblage vector of percentages by plant taxa; the image is publicly available; see http://commons.wikimedia.org/wiki/File:Misc_pollen.jpg. The assemblage vector can then be used to search for similar reference assemblages in a database, and metadata (properties) associated with the search results can be utilized in conjunction with a database Model to predict a geographic location, or characteristics of the location, that is likely to be associated with the target sample. This subsection provides an overview of content-based image search and retrieval, and of preferential image segmentation based upon a tree-structured decomposition and representation of an image called the “tree of shapes”.

Traditional image search methods are based on keywords. The keywords are chosen in a way that best represents image content, which requires expert knowledge and is labor intensive. An automated content-based image search capability can be more effective and practical when it is feasible. Similarity-based search strategies that find images that are similar to a target using specified similarity criteria are typical of content-based methods. One approach is to embed data objects derived from the images in spaces such as metric spaces and use the distance function or metric as an inverse measure of similarity. Images are represented as points in the metric space, and the image indexing and retrieval method may rely upon properties of the triangle inequality if the distance function is a metric. Performance is a function of several design decisions, such as the selected image preprocessing algorithms, as well as the index structure and the methods used for data retrieval. The purpose of image preprocessing is to extract a vector of desired features from the original images. The research efforts at the University of Tennessee have utilized multivariate statistical analysis based upon PCA to extract feature vectors from images. The feature vectors are embedded in the space, which in this example is a metric space, and are stored in an index structure that is optimized for similarity search. When a search query arrives, similarity search strategies based on the triangle inequality are used to retrieve the images that satisfy the search criterion.

Similarity search based on metric spaces was first introduced in Burkhard, (W. A. Burkhard and R. M. Keller, “Some approaches to best-match file searching,” Comm. ACM, 16 (4) 1973, 230-236). The triangle inequality was first used for similarity search by Koontz, (W. L. G. Koontz, P. M. Narendra, and K. Fukunaga, “A branch and bound clustering algorithm,” IEEE Trans. Comp., C 24, 1975, 908-915). Algorithms based upon this approach can be divided into two categories according to the way in which they partition the metric space. Some partition the space using reference points, while others achieve that based on Voronoi partitions, (F. Aurenhammer, “Voronoi diagrams: a survey of a fundamental geometric data structure,” ACM Comp. Surveys (CSUR), 23 (3) 1991, 345-405). This portion of prior research has focused on approaches based on reference points. In these approaches, several points in the metric space are chosen, and the distances between these points and all the remaining points are calculated. The metric space is then partitioned according to these distances. For example, Yianilos implemented vp-tree using this idea; see, for example, P. Yianilos, “Data structures and algorithms for nearest neighbor search in general metric spaces,” Proc. of the 4^(th) A Annual ACM-SIAM Symp. On Discrete Algorithms, Austin, Tex., 311-321, 1993. In the literature, the number of metric computations is typically cited as the criterion of performance. However, this is not a good indicator of performance when preprocessing steps are utilized and the metric is applied to a feature vector. Image preprocessing is a critical component of similarity search strategies that has a significant impact upon overall performance. Search accuracy is also a very important aspect of performance, and must often be judged subjectively using human evaluation. The critical issue is whether searches return results that are useful to the end users, and the choices of metric space and preprocessing steps both influence subjective search accuracy. New performance criteria that consider both search efficiency and utility have been utilized in our prior research to guide the development of CBIR databases; see, for example, Z. Shen, Database Similarity Search in Metric Spaces: Limitations and Opportunities. M.S. Thesis, University of Tennessee, August, 2004.

CBIR database design using a metric space approach may be initiated with a choice of preprocessing to extract feature vectors from images, and of the metric space. Let X be an arbitrary set. A function d·X×X→

is a metric on X if the following conditions are satisfied for all x, y, zεX:

Positivity: d(x,y)>0 if x≠y, and d(x,x)=0

Symmetry: d(x,y)=d(y,x)

Triangle inequality: d(x,z)≦d(x,y)+d(y,z)

A metric space is a set with a metric, (X,d). Elements of X are called points of the metric space, and d(x,y) is the distance between points x and y.

Image similarity search approaches based on metric spaces embed all images in a metric space. Similarities between images are evaluated quantitatively by the metric. Similarity searches are modeled by range queries in the metric space, such as: “Find all images within a certain metric value, or distance, from a specified target.” Given query (q,r) on a data set in a metric space U, where q is the search target and r is the search range, the goal is to find all objects that are within distance r from the point q in the metric space, or the set {u_(i)εU|d(q,u_(i))≦r}, which is called the result set of query (q,r). As discussed above, query q may be followed by another query referencing the first object or another, different object.

Search methods based on metric spaces can use tree-structured indexing techniques to achieve a sub-linear time complexity. At each tree node, indexing divides the data set into several subsets based on similarity relations between objects. Indexing based on a metric space is equivalent to hierarchically partitioning the space into several subsets. Different partition strategies yield different search performance. All the existing partition strategies can be divided into two categories: methods using reference points, and methods based on Voronoi partitions. The prior work at the University of Tennessee focused on approaches based on reference points. Partitioning approaches using reference points choose several reference points in the space and assign one or more of them to each node of an indexing tree. The set of images associated with a node is divided into several subsets according to the distances between the images and the reference points. Child nodes repeat this process with other reference points until leaves in the index tree are reached. In this manner, the space of images is hierarchically partitioned into portions of annular regions.

Given the desired tree height h, h reference points {p₁, p₂, . . . , p_(h)} are chosen. A reference point p_(i) is assigned to the nodes at level i of the tree. At level i, the space is partitioned into several non-intersecting annular regions R_(ij),j=1,n_(i) centered at the reference point p_(i), defined by a sequence of increasing diameters. Given the set of data points U embedded in the metric space, the annular regions associated with reference point p_(i) are

R _(ij) ={u _(k) εU|d(u _(k) ,p _(i))ε[a _(ij) ,a _(ij+1)]}

where {a_(ij)}_(j=1) ^(n) ^(i) ⁺¹ is an increasing sequence with a_(i1)=0 and a_(in) _(i) ₊₁=∞. The indexing tree can be visualized as h levels of annular regions that overlap. The final partition consists of the intersections of all the annular regions.

FIG. 15 illustrates an example of the partition of a 2-level indexing tree. In (A), the space at tree level 1 is partitioned into three annular regions R₁₁, R₁₂, and R₁₃ (with a fourth region implicitly extending from the largest boundary shown in the figure to infinity, which is generally empty). At tree level 2 in (B), the space is partitioned into two annular regions R₂₁ and R₂₂. The final partition (C) of the 2-level indexing tree is produced by the intersections of these five annular regions. There are eight subsets in the final partition (C) (not including the implicit regions that extend to infinity).

Image similarity search methods that use indices based upon reference points may use the triangle inequality to rule out partitions, and therefore paths of descent in the index tree, that can not contain a solution. The search request propagates through the tree-structured index, and a candidate set is generated. A result set, which is a subset of the candidate set, is obtained by exhaustively searching the candidate set. The candidate set of query (q,r) is found using the triangle inequality. In FIG. 16, three points, a reference point p_(j), the query target q, and an object u_(i) are located in the metric space, demonstrating the triangle inequality in similarity search. The triangle inequality relates the values of the metrics, or distances, as represented in the figure by lines, by the inequalities:

d(q,u _(i))≦d(u _(i) ,p _(j))+d(q,p _(j))

and

d(q,p _(j))≦d(u _(i) ,p _(j))+d(q,u _(i))

d(q,p _(j))−d(u _(i) ,p _(j))≦d(q,u _(i)),

or

d(q,p _(j))−r≦d(u _(i) ,p _(j))≦d(q,p _(j))+r.

If u_(i) belongs to the result set, it should satisfy the search criterion

d(q,u _(i))≦r,

or

d(q,p _(j))−r≦d(u _(i) ,p _(j))≦d(q,p _(j))+r.

Therefore, a necessary condition SC that must hold in order for the search criterion to be satisfied by u_(i) is,

${SC} = {\bigcap\limits_{j = 1}^{k}\left\{ {{u_{i} \in U}{{d\left( {u_{i},p_{j}} \right)} \in \left\lbrack {{{d\left( {q,p_{j}} \right)} - r},{{d\left( {q,p_{j}} \right)} + r}} \right\rbrack}} \right\}}$

The candidate set Cand is the union of all the stored objects lying within partitions that intersect the search criterion SC,

${Cand} = {\bigcup\limits_{j = 1}^{i}\left\{ {P_{i}{{P_{i}\bigcap{SC}} \neq Ø}} \right\}}$

where t is the total number of partitions. Once the search request has been restricted to the candidate set, the candidate set is scanned exhaustively to get the result set,

Res={u _(i) εU|u _(i) εCand̂d(u _(i) ,q)≦r}

FIG. 17 illustrates an example of processing a search query (q,r) on a two level index tree based upon reference points P₁, P₂, and P₃. In (A), three subsets intersect with the search criterion, and in (B) two subsets intersect with the search criterion. The shaded area in (C), which is the intersection of the two shaded areas in (A) and (B), represents the candidate set.

One component of the search time is typically proportional to the size of the candidate set, due to linear search. A second component is due to traversal of the tree, and is typically logarithmic in the size of the database, and a third component is due to computation of the metric distance from the query to each reference point. This is summarized by the equation

T=N _(ref) ×T _(metric) +N _(cand) ×T _(metric) +T _(tree)=(N _(ref) +N _(cand))×T _(metric) +T _(tree)

where N_(ref) is the number of reference points, N_(cand) is the number of objects in the candidate set, and T_(tree) is the tree traversal time. Let N_(metric)=N_(ref)+N_(cand), which is the total number of metric evaluations. Since metric computations are usually more time consuming than the time required to traverse the index tree, T_(tree) can be neglected. In most situations, N_(cand)>N_(ref) by a wide margin, so the size of candidate set is the dominant component and the search time is primarily determined by N_(cand).

The design of a CBIR database is typically an iterative process, with trade-off studies performed on a sample of representative images to determine the optimal preprocessing strategy and embedding in a metric space. This process needs to be guided by quantitative evaluations of the performance of candidate designs. Usually, the number of metric computations determined by the candidate set size is used as the criterion to evaluate search performance. However, this criterion only works for comparing different search methods that produce the same result set. In other words, the comparison of N_(metric) is feasible when the search results are the same. Different image preprocessing methods, index structures and retrieval strategies will yield different result sets. Therefore, a new criterion that considers both the candidate set size and result set size is required. The ratio between Nres, the number of results of a search, and N_(cand) has been chosen to meet this requirement. A high quality search strategy should yield a large value for the ratio Nres/N_(cand). In other words, Nres should be close to N_(cand), which means few unnecessary metric computations are performed during the search. The value of Nres/N_(cand) also measures the efficiency of a search strategy. In order to compare the performance across different data sets, normalized search ranges are used. A normalized search range is the ratio between the search range and the average distance between all the stored objects, or r/μ, where the average distance μ is

$\mu = \frac{\sum\limits_{i = 1}^{N_{total}}\; {\sum\limits_{j = {i + 1}}^{N_{total}}\; {d\left( {u_{i},u_{j}} \right)}}}{N_{total} \times {\left( {N_{total} - 1} \right)/2}}$

where Ntotal is the total number of objects stored in the database. A figure that illustrates the values of Nres/N_(cand) against different r_(normalized) is used to evaluate the performance of different metrics and data extraction methods. In such a figure, the area under the curve of Nres/N_(cand) indicates the performance, and a larger area means a better performance with respect to search efficiency. FIG. 18 is an example figure comparing performance of two different data extraction methods a and b.

The area under curve a is larger than that under curve b. Thus, the search performance of using data extraction method a is better than that using b. In order to make this criterion more suitable for practical applications, an improved performance evaluation method is provided. Assume the search ranges are distributed exponentially, i.e.,

p(r _(normalized))=γe ^(−r) ^(normalized)

for a positive constant γ. The search performance for search ranges smaller than r_(max) can be evaluated by a weighted integration,

${\varphi \left( r_{\max} \right)} = {\int_{0}^{r_{\max}}{\frac{N_{res}\left( \hat{r} \right)}{N_{cand}\left( \hat{r} \right)}\gamma \; ^{{- \gamma}\hat{r}}\ {\hat{r}}}}$

The performance characteristic measured by φ(r_(max)) is expected search efficiency over exponentially distributed search ranges less than r_(max). The value of r_(max) is assumed to be sufficiently large that the contribution by the tail of the distribution can be neglected.

The numeric value of φ(r_(max)) provides a method of comparing search efficiency across candidate database designs. Another critical measure of performance, which tends to be highly subjective, is the utility of search results. In other words, does the search method return results that are useful to users? A method that we have utilized in a prior design for a database of 1,092 photos of rowing teams is used as an illustration. The photos in this data set belong to various types, including photos looking down on a boat with rowers, photos of boats in a race at different locations and events, taken from the side, and photos of a rowing team in groups. For the evaluation of database utility, all the photos were divided into 8 types, and 3 photos were chosen from each type. These selected photos were used as search targets, defining 24 searches. Four example photos belonging to different types are presented in FIG. 5. The search results were judged manually by one of the investigators, and a score was assigned to the quality of the returned results for each search. The scores for search efficiency and search utility were utilized to compare among a selection of image preprocessing steps utilizing PCA methods to extract feature vectors, and different metric space embeddings, enabling the implementation of a database that provided both acceptable utility and high performance.

A CBIR database may be used to store raw images, but it is likely to be more effective in the identification of micro-bodies or micro-particles if the images are first segmented. An ideal segmentation would create images containing, for example, individual pollen grains or diatoms with no background or obscuring data. This can be done manually, but partial or total automation of the image segmentation step may use a preferential image segmentation algorithm based upon “tree of shapes” descriptions of the image and image segments, as described in detail in Y. Pan, Image Segmentation using PDE, Variational, Morphological and Probabilistic Methods, PhD Dissertation, Electrical Engineering, University of Tennessee, December, 2007, incorporated by reference in its entirety. This representation provides a hierarchical tree for the objects contained in the level sets of the image. The hierarchical structure is utilized to select the candidate objects from the image. The boundaries of the selected objects are then compared with those of objects selected from prior images. By means of the tree of shapes and curve matching, the proposed method is able to preferentially segment objects with closed boundaries from complicated images. It is more straightforward to utilize prior information in this way than with curve evolution methods, and there is no initialization problem. Furthermore, the method is invariant to contrast change and translation, rotation and scale. The method has been shown to work in the presence of noise.

The preferential image segmentation algorithm is illustrated by example. An intuitive description of the algorithm is to construct the trees of shapes for both a target and a candidate image that are to be compared. The candidate image would correspond to a reference image of a pollen grain in a database, while the target image would correspond to a sample to be analyzed. Both images are segmented into a tree of shapes description, which is a nested collection of upper (or lower) level sets; see, for example, L. Ambrosio, V. Caselles, S. Masnou, and J. M. Morel, “Connected components of sets of finite perimeter and applications to image processing,” Journal of the European Mathematical Society, 3(1):213-266, 2001. The objective is to find a node within the tree of shapes description of the candidate image that is the root of a sub-tree that matches the tree representation of the target (reference) image to within a specified accuracy.

FIG. 19 shows two examples of preferential segmentation which are shown here to illustrate the performance of the method; see Pan for a more extensive evaluation where (A) represents the target image of a truck segmented in a candidate video frame (C) and (B) is a target image of an electronic component segmented in image (D). Image (C) is a surveillance video frame that was segmented to find a match to target image (A). The only matching segment that was returned was the segment containing the image of the truck (A), outlined in red (heavy line). Image (D) is a photograph of a collection of electronic parts. Image (B) is a photograph of one of these parts taken with a different orientation. The preferential image segmentation algorithm segmented the correct part, outlined in red (third component from left bottom) in image (D), demonstrating the algorithm's tolerance of rotation and scaling.

In one embodiment, preferential image segmentation may be utilized to isolate images of individual micro-bodies for identification. Feature vectors are extracted from each isolated image and utilized to query a database of reference images and associated metadata in order to select the most similar reference data to each particle from the database and identify the charcoal particle, pollen grain, diatom, foraminifera, or other particle. Micro-body assemblage data can be constructed for each sample from these identifications, substantially reducing the human labor necessary to process samples.

Images obtained using optical microscopy have an extremely shallow depth of field relative to the diameter of, for example, a pollen grain. Microfossils have three dimensional structure, and any projection of this structure into a two dimensional image represents a loss of information. The limitations of the shallow depth of field can be reduced using a sequence of images as the focal plane is moved, and both confocal and scanning electron microscopy SEM provide greater depth of field, with SEM microscopy having a significant advantage over standard optical techniques when surface texture is used as a discriminating feature. A 3D representation of a microfossil can be constructed from multiple 2D images taking at various orientations, but requires additional reference data. Past automated identification efforts have relied upon image analysis algorithms that are specific to shape or textural features, or artificial neural networks (ANN). Of the ANN approaches, France et al. (I. France, A. W. G. Duller and G. A. T. Duller, Software Aspects of Automated Recognition of Particles; the Example of Pollen. Image Analysis, Sediments and Paleoenvironments, P. Frances (ed.), Kluwer (2004) 253-272) appear the most promising. France et al. utilize a 3-layer network, using Gabor filters to detect edges, followed by a layer to piece edges together into an object and a final layer for identification. During training, their approach adds new objects that cannot be classified to the set of classes, allowing the algorithm to adapt to newly presented data (if done in training).

CBIR using similarity search is applied in one embodiment for micro-particle recognition, allowing Model-based prediction of a particle's taxon using the most similar reference data available. This approach provides a natural growth path as new data are added to the reference collection, obviating the need for new algorithms or retraining of classifiers. The objective is classification of each micro-particle and subsequent calculation of one or more micro-body assemblages for each sample, using a system and methodology that can grow with the reference collection, producing better predictions with greater accuracy over time. Once a micro-particle assemblage has been obtained from a sample, the micro-body assemblage database (MAD) constructed of data for the micro-particle assemblages can be queried to determine similar micro-body assemblages within the reference database. These reference data can be utilized in conjunction with models to predict geographic location or other characteristics of the object or of the local environment.

Measured properties of spectral/acoustic data, micro-body assemblages and images of objects can be utilized, in conjunction with respective databases that support search and retrieval based upon similarities among objects, to provide information about geographic location and other properties of a sampled target object. ESD and MAD are examples of databases that can build upon existing technologies that have been developed to implement high-performance similarity search engines.

Thus, there is provided an automated analysis and identification of micro-particles, larger objects and the like which may be found in trace quantities of or even be the target object. Content-based image retrieval (CBIR), and associated databases which may contain photographs, X-rays, MRI image data, infrared image data and the like, is a relatively new technology that has undergone rapid evolution over the past decade. The literature on automated microfossil identification focuses primarily on two approaches: structural/statistical techniques, and methods based upon neural network classifiers. The first approach requires image analysis algorithms tailored to resolve specific features, while neural network methods have difficulty extending as the reference data expand, without lengthy retraining. CBIR, combined with preferential image segmentation, will be effective in reducing the burden placed upon the classification step by focusing the classifier's scope to the set of reference data and features (for example, apertures and sculpturing on pollen grains) most similar to a target sample's image(s) and most likely to lead to accurate identification.

Dynamic indexing will now be discussed with reference to FIGS. 20-24. Commercial database products provide an excellent way to organize storage for vast quantities of data. In particular, large volumes of multivariate data are readily stored in a commercial off the shelf (COTS) database. Certain types of multivariate data are especially useful when analyzing relationships between data samples, determining the identity of a device, for example, a target object, providing a sample, and developing information for forensic analysis.

A common database operation involving multivariate data is a search for samples in the database that are similar to a given sample, and the ability to efficiently perform the search operation is important. For example, similarity between samples can reveal information about, and associations between, the objects from which the samples were collected. However, data search and retrieval methods supplied with a COTS database are usually tailored for business record management and often perform poorly when used for multivariate data search operations.

Methods for the design and implementation of dynamic indexing strategies that enable efficient search and retrieval of multivariate data extend those discussed in U.S. Pat. Nos. 6,741,983, 7,272,612, and 7,454,411, and published U.S. Patent Applications US 2008/0172402, US 2008/0109461 (now allowed), US 2009/00555361 and US 2008/0134195. Dynamic indexing methods are particularly valuable when used with programs and procedures that explore and analyze relationships between samples in a data set.

Dynamic Indexing—Search Tree Structures

A goal of dynamic indexing is efficiency in searching and retrieving samples from a database. Samples of interest might be ones having certain characteristics or features, or could be samples that are closely related to, or similar to, a search example. But, regardless of how ‘interesting’ is defined or specified, search and retrieval efficiencies take priority.

Key to implementing an efficient retrieval strategy is providing an indexing structure that rapidly prunes or splits the set of database samples, producing a small set of data samples potentially matching the search criteria and excluding samples that cannot match. Reducing the size of the set to be searched is important; a smaller set of search candidates means fewer samples are passed to a final search method that typically operates on a per sample (linear search) basis. A good choice for an indexing structure is a tree configuration, for example, the tree shown as tree search structure FIG. 20, which reduces search times from O(n) to O(log n), where n is the number of samples in the search space. The outcome of tests on samples at query nodes (nodes ▴ in FIG. 20) in the tree structure determine one or more search paths through the tree to terminal nodes that either contain or reference short lists of samples (Reference(s)). A linear search method operates upon the short sample lists, returning a final set of samples matching the search criteria.

Using a tree structure is a significant part of the dynamic index design, but two additional design aspects are also important: methods for representing the samples and developing the tests that are associated with the query nodes.

Dimensionality Reduction—Reduced-Order Attribute Vectors

A set of spectral data of an ESD database is an example of the type of data with which dynamic indexing may be designed to operate. The data are measurements over a range of frequencies or wavelengths producing a complex-valued spectrum for a sample (per FIG. 21, 20 Hz to 20 kHz). The audio spectrum is depicted by way of example and should not be considered limiting. Dynamic indexing as discussed herein may be applied to any of the data discussed throughout the specification including but not limited to spectral data, assemblage data, time or frequency series data, historical data, geographical data, DNA profile data, manufacturer data and other data. As discussed above, ESD data may comprise radio frequency, acoustic, optic and any other spectral data, visible or invisible. The magnitudes of the complex-valued data may typically be the more important quantities, and the magnitude spectra for three ‘M’ data samples (three different curves that have spectral peaks) are shown in FIG. 21. Each sample is measured at 1,601 frequencies linearly spaced over the depicted audio range of 20 Hz to 20 kHz, i.e. an example of a frequency series of data. The data value at a single frequency is a single sample attribute, and the attribute vector for a data sample is an element of a high dimensional vector space (having 1,601 dimensions).

The dimensionality of spectral data can be reduced by projecting the M spectra data samples onto a lower dimensional subspace yielding significant improvements in computation efficiency. An ideal projection may also reveal structure (at least two clusters of data samples) inherent in the data set while reducing dimensionality.

Variance of sample set attribute values is often exploited to discover structure in the data set. Larger variance tends to indicate data set structure that is more spread out. In a complementary manner, entropy can be used to indicate data set grouping or clustering. Using a combined objective function, variance×entropy (VE), tends to yield clusters of data samples that are well separated in the subspace, if such clusters do indeed exist in the data set. A method has been developed to find a subspace providing structure in the data set that uses a projection search method optimizing a variancexentropy objective function.

In the projection search method, the VE objective function is evaluated over values of the data set samples projected onto a vector, α. Vector α, with ∥α∥=1, is a projection direction in the existing high dimensional vector space of the data samples. When implementing the VE function for projection search, a quantity related to entropy, information gain, I, is used instead of entropy, with I given by, I(p(x))=E_(max)−E(p(x)), where E_(max) is the maximum entropy (see below), and E(p(x))=∫p(x) log p(x) dr is the entropy of the distribution of the values, p(x), produced when projecting the data sample vectors onto a. Maximizing information gain produces projections with tight clusters of data, and maximizing variance tends to spread out the data clusters in the projection direction.

In the projection search implementation, the distribution, p(x), is approximated by an N-bin histogram of the values of the samples projected onto α. E_(max) is a maximum entropy value and is calculated as the entropy of an N-bin histogram of an equal size data set but with uniformly distributed values. A projection producing at least two clusters for the data set yields lower entropy for the set and provides information gain. Other known approaches for quantifying information gain may be used as well.

The projection search method finds a lower dimensional subspace of the existing data space that exhibits structure, i.e. grouping the data samples into well separated clusters. The space of projections being searched typically contains a large number of local maxima for the VE objective function, which poses a problem for gradient search methods. Gradient methods often get ‘stuck’ at local maxima and do not proceed to find other, possibly better, solutions.

An alternative to using a gradient method is to use a random search method such as simulated annealing for finding optimal projections. Simulated annealing (SA) operates by randomly generating candidate projections from the space of projections, searching for projections that have higher VE function values. During SA operation, the search region is slowly reduced, focusing the search upon regions of higher VE function values and better (more optimal) projections. Other optimization methods can be used besides SA, such as methods that utilize genetic algorithms.

One strategy employed for finding optimal projections using simulated annealing is to decompose the problem into a search for one projection direction (axis) at a time. Once a first projection is found, the search for a second projection can begin. Candidate projections for a second direction are also randomly selected, but are constructed to be orthogonal to the first projection. Once a second projection is found, the SA method is again applied to find a third projection. Successive projections (axes) are found, each one maximizing the VE objective function in a direction orthogonal to all previous projections, until the R axes of the subspace are produced. The result of the SA search is an orthogonal basis set for an R-dimensional reduced-order attribute subspace exhibiting significant structure contained in the set of data samples. Other strategies or enhancements can be used, for example, one could perform a search for an optimal choice of two directions simultaneously.

As an example, projection search can be applied to a set of M spectra data as discussed above, with the results shown as clusters in FIG. 22. Each sample in the data set, with label M01, M02, . . . , or M24, is plotted as a point in the scatter diagram of FIG. 22, with a sample's label indicated, for example, by a shaded symbol having a specified shape of the displayed data point. Projection search in this example reduced the order of the attribute vector space of 1,601 frequency dimensions of the original data to a subspace with 3 dimensions shown as a cube. FIG. 22 demonstrates visually that the M spectra data sample set, with 2,047 samples, is nicely split into two well separated groups in three dimensional space.

The results displayed in FIG. 22 show the sample labels (using shading and symbol shape), but a priori label information is not used, nor is it necessary, in dynamic indexing. Dynamic indexing is an unsupervised learning method.

Dynamic Index Creation—Recursive Construction

The tree structure shown in FIG. 20 contains a top level node, the root node (Sample). When constructing the tree, the entire data set is operated upon at the root node, and a test for splitting the sample set is formed. The sample set is split using the test, and the process is repeated. Hence, the method for constructing the tree is to take a set of samples, produce a test on the set, split the set using the test, and recursively apply the same process to each of the two subsets. The process stops when a set (a list of samples) of sufficiently small size is produced. The desired size is one where the set can be efficiently operated upon by a linear search method.

A node test may split the samples passed to the node into two or more groups, where on average (at least) the samples of each group are closer or more similar to each other than to members of the other groups. The earlier projection search step spreads out the samples in a reduced-order space. The first step in constructing the node test is to determine the clusters in the sample set. There are a number of possible clustering methods, and the one used in this example is the K-means clustering method. Other methods of clustering can be used as discussed above.

When used in creating a dynamic index, the K-means method takes two parameters as input: 1) a sample data set represented by reduced-order attribute vectors generated by projection search, and 2) K, the number of clusters the algorithm should create. The result of K-means will be K clusters, consisting of cluster centers and a cluster assignment for each sample in the data set. A clustering result, by way of example, of the M spectra data set for K=2 produced by the K-means method, along with a separating hyperplane, is shown in FIG. 23; however, in other examples, K may be greater than two. The two clusters are displayed as blue and red points. The separating hyperplane (gray linear appearing planar area separating the cube) is not a product of the K-means method, but is generated by a support vector machine (SVM) method.

Support vector machine (SVM) is one method for finding an optimal decision surface that partitions two sets of labeled samples. Other methods may be used. The decision surface (hyperplane) provides the test for a query node.

SVM is a supervised learning technique and requires labeled samples. But as discussed previously, the goal of this work is to develop a generalized indexing method that can be applied to a set of samples that may not have label information. An approach is to use the cluster assignment provided by the previous clustering step to provide a temporary sample label, red→−1, or blue→+1, for use by the SVM method. Other methods, typically found in the field of pattern classification, can be used to classify vectors in the R-dimensional reduced-order attribute subspace, where R can be any positive integer.

The decision surface calculated for the M spectra data example (a separating hyperplane) is shown in FIG. 23 as introduced above. The test at the query node will be of the form, q({right arrow over (x)}, {right arrow over (β)}, β₀)={right arrow over (x)}^(T){right arrow over (β)}+β₀<0, where {right arrow over (x)} is a data sample in reduced-order attribute vector form, and {right arrow over (x)}^(T){right arrow over (β)}+β₀ is the equation for the separating hyperplane calculated by the support vector machine.

SVM works for linearly separable and nonseparable clustering of the data set. SVM calculates a decision surface based upon sample distribution and criteria supplied to the method. For linearly separable data, all samples of one label are on one side of the decision surface, and all samples of the opposite label are on the opposite side of the decision surface. In the nonseparable case, one or both clusters extend across the hyperplane. The data in FIG. 23 are nonseparable. This is acceptable for dynamic indexing because the goal of clustering and SVM is to produce a test, q({right arrow over (x)},{right arrow over (β)}, β₀), that can be applied to the samples and used to split the sample set or direct a search.

Recursive construction of a dynamic index is depicted in FIG. 24 where FIG. 23 is shown as a Node 0 (root node). The M spectra data set (upper grey cluster) is passed to an index construction method. The data are operated upon, a test associated with Node 0 is calculated, and the data set is split, with the blue (dark) and red (light) clusters (separated by the hyperplane) descending the left and right branches, respectively. Next, a test associated with Node 1 is calculated, splitting the blue cluster and creating, for example, cyan (dark) and green (light) data clusters that descend to the next level. Similarly, a test associated with Node 2 is calculated, the red (light) cluster may be split, and, for example, magenta (dark) and yellow (light) colored clusters are produced. In FIG. 24, index construction is shown as completed and sample lists are produced and are shown output of Nodes 1 and 2 respectively. In most cases, additional levels of tests and nodes would be required to produce samples lists of sufficiently small size for a linear search method.

Dynamic Index—Search and Retrieval

Once constructed, a dynamic index can be used to search and retrieve samples in a database. Initiating a search using a dynamic index is as depicted in FIG. 20. A search sample is presented at the root node, and the root node test is applied to the sample. The result of the test directs the search down the branches to the next lower node. If the next lower node is a query node, the process repeats, applying the test associated with that node to the search sample. If the next lower node is a terminal node, the search sample and the list of samples associated with the node are passed to a linear search program for final calculation of the search results.

Distance Metrics and Measures of Similarity

The example discussed in FIGS. 20-24 uses Euclidian distance for determining the similarity between data samples. Other distance metrics providing different models of similarity may yield better information for associating samples. For example, a cosine distance metric operating on the M spectra data sample data may reveal a different set of sample associations. Other distance operators, such as squared chord distance, have been shown to work as well or better than Euclidian distance on certain samples sets.

The decision surface for a query node is calculated by the SVM method as a solution to an optimization program. For a very large data set, the optimization operation may become limited by memory requirements upon the computer hardware. The size of the data set is not a factor when the decision surface is used in a search/retrieval operation, but calculating it for a large data set may be a problem. A solution is to use a subset sampled from the full data set population when creating the decision surface. Methods of sampling are well-known and documented in the literature.

The decision surfaces generated for the index query nodes in the example are hyperplanes in the reduced-order attribute subspace. The SVM method allows the use of certain nonlinear (non-affine) functions that map the reduced-order attribute input subspace to a feature space. The resulting decision surface is a hyperplane in the feature space, but can be a manifold in the input subspace. Therefore, the disclosed method can utilize SVM over a feature space to determine a switching surface that is a manifold and is not restricted to affine decision functions.

Similarity Search

The dimensionality reduction achieved using a reduced-order attribute vector representation for the sample data is an embedding of the data samples in a lower dimensional subspace. To ensure all samples meeting similarity criteria for a specific distance metric are retrieved when using dimensionality reduction and a dynamic index, the embedding should be contractive. Any attribute vector can be uniquely decomposed into the sum of its projection onto the lower dimensional subspace and a vector in the orthogonal complement of this subspace. The triangle inequality ensures that two attribute vectors that are separated by at least x units of distance in the lower dimensional subspace are also separated by at least the same distance in the original vector space.

If a search is conducted for all stored attribute vectors within a distance d (with respect to the metric defined on the original vector space) of a target vector defined by the search criteria (having a similarity measure of d), then the projection of the target vector onto the lower dimensional subspace and the value d can be used to determine which portion or portions of the data collection, as defined by the decision surface (whether affine or a more general manifold) need(s) to be searched for stored vectors that satisfy the search criteria. In this manner, one or more paths through the index tree are traversed, leading to one or more leaves of the tree (terminal nodes) at which stored vectors are searched for vectors that satisfy the search criteria. An alternative way to implement a decision process for each node of an index tree is provided, for example, in FIG. 2 of U.S. Pat. No. 6,741,983, incorporated by reference herein as to its entire contents.

Methods discussed above are implemented in a prototype system to support forensic analyses of field-acquired objects and for the discovery and correlation of information across modalities that can lead to more effective prosecution of the sources of these objects and associated organizations. Example modalities include spectral signatures, imaging, and trace particle analysis. Data sources used in forensic analyses include evidence from historical and ongoing investigations, and reference data having known environmental properties and geographic origins. A data storage and management process has been developed and used to coordinate automated analysis processes that mine this information and discover data associations that can help identify evidence and lead to the timely identification and prosecution of threats. The evidence of interest includes, for example, the locations, physical descriptions, environmental relationships, events and technology-specific measurements of an object's internal components and any detected trace material. The evidentiary data are combined in the prototype system into an integrated data management environment that is used to construct associative data models represented by evidence trees (i.e. the components, trace evidence, and properties associated with an object). Reference data include technology-specific forensic or intrinsic measurements of representative items of known origin or source and are also stored in the integrated data management system. First and second examples will now be discussed for the prototype system.

Example 1 A Vehicle

An object and other objects or information associated with the object can be represented or illustrated as a graph as shown by way of example in FIG. 25 where label 1008 may represent an object 1001. The object 1001 is represented as the central or an otherwise distinguished symbol. Other objects 1002, 1003, and 1009 are shown associated with object 1001 by lines or other graphic styles representing association, such as containment. (A motor is contained within a car). Any object may optionally be labeled by a name or other information as shown by the label 1008. By way of example, object 1001 can correspond to a car, and objects 1002, 1003, and 1009 can be the car's engine, transmission, and emissions control system, respectively. Objects such as 1002, 1003, and 1009 can have other objects associated with them, supporting a decomposition of objects to an arbitrary degree. By way of example the car's engine 1002 could have a fuel flow meter 1004.

An object and other objects or information associated with the object can be represented or illustrated as a graph as shown by way of example in FIG. 25. The object 1001 is represented as the central or an otherwise distinguished symbol. Other objects 1002, 1003, and 1009 are shown associated with object 1001 by lines or other graphic styles representing association, such as containment. Any object may optionally be labeled by a name or other information as shown by the label 1008. By way of example, object 1001 can correspond to a car, and objects 1002, 1003, and 1009 can be the car's engine, transmission, and emissions control system, respectively. Objects such as 1002, 1003, and 1009 can have other objects associated with them, supporting a decomposition of objects to an arbitrary degree. By way of example the car's engine 1002 could have a fuel flow meter 1004.

Instead of a physical object or component, a symbol can be used to represent information associated with or obtained from another object. For example, symbol 1009 could instead be operational data such as engine speed as a function of time or a histogram of the fraction of time the car's speed was in each of a set of intervals over a period of time, service data such as a record of maintenance performed on the car over a period of time, or a geographic record of the car's location as a function of time. These are just examples of time series or frequency series data that may be associated with a central object 1001 such as a car. In this case, a line or other graphic style representing association can be used to represent or illustrate this association. Example lines between symbols 1001, 1002, 1003, 1004, 1005, 1006, and 1009 in FIG. 25 are used to represent this association. Although the related objects and information in FIG. 25 form a tree-structured graph with root at object 1001, information may be associated with more than one object, in which case the graph formed by the representations of objects and their associations would not be a tree. By way of example, a current measured between a battery and an alternator in a car would be associated with both the battery and the alternator. By way of example, the level of current flow as time series data and other engine data may predict a battery or alternator component failure event, or, described differently, a vehicle process failure.

Both objects and information can be typed, and the types may optionally be indicated in the representation or illustration by, for example, shading as shown for objects 1002, 1003, and 1009, textures as shown for objects 1004, 1005, and 1006, or a color or class name. The representation may also be in a computer's memory or other storage device in a machine-readable form. In each case, the indication should be consistent and unique for each type. For example, the texture or pattern filling the representation of objects 1004, 1005, and 1006 indicates that objects 1004 and 1005 have the same type and that object 1006 has a type that is different from that of objects 1004 and 1005. A similar statement can be made for objects 1002, 1003, and 1009. Objects and information items may be differentiated by their representations. For example, objects 1002, 1003, and 1009 can be differentiated from information items represented by objects 1004, 1005, and 1006 by the use of solid instead of patterned fills. The shapes of the objects' representations can also be used to differentiate either object or information type, or between objects and information items.

Information that is maintained in a computer system by, for example, a database or file system will preferentially be represented as an object of a designated class in a manner that is compatible with object-oriented programming languages such as C++, C#, and Java. Other terms that are specific to each object-oriented programming language, such as are found in various Lisp implementations of object-oriented programming, can be equivalent. The information may be stored in a database system such as MySQL, Oracle, or Postgresql, using a mapping that specifies how objects of a specific class can be stored in the, for example, table structure of the database system and may be subsequently retrieved from the database system to create and populate an object of the class. This process is sometimes called “serialization” and “de-serialization”. The database system may also be replaced by a file system maintained by a computer's operating system or a network-attached or network-accessible storage device.

The objects that are related by the above associations may be represented or illustrated in a manner that groups these objects into a set of all objects related to a specified object 1001. By way of example, object 1001 can correspond to a car, and objects 1002, 1003, and 1009 can be the car's engine, transmission, and emissions control system, respectively, while objects 1004 and 1005 can be temperature measurements, or information, obtained from the engine and transmission, respectively, and object 1006 can be a recording of the gear engaged by the transmission, for example, Park, Drive, Reverse, and Neutral, as a function of time. All of these objects are related to the car, represented by object 1001, and this grouping may be illustrated by, for example, a shaded region bounded by a closed dotted curve 1007. Other methods may be utilized to represent or illustrate this grouping; by way of example a data structure such as a linked list or an encoding within a label of each object of the name of the primary object and optionally a path between the primary object and the object though an association graph may be used to represent this grouping within the memory or data storage element of a computer or computer system.

One is not limited to the representation or illustration shown by example in FIG. 25. Further examples are provided in FIG. 26. Illustration 1101 of FIG. 26 corresponds to the representation or illustration shown in FIG. 25. Illustration 1102, on the other hand, shows the same or equivalent information as a more traditional tree structured graph with the car as the root node. Illustration 1103 of FIG. 26 shows a set of objects and information items that are associated by a graph that is not a tree. Optionally, this graph may be a directed graph. In each case an enclosing curve and/or patterned or shaded background is utilized to represent or illustrate the extent of this set of associated objects and information items; this is optional. In all cases, the representation may be resident in a computer's memory or data storage device, including a network-attached storage device that is accessible to a computer, in which case the representation is comprised of one or more data structures that contain data identifying, referencing, or pointing to information representing the objects or information items. Such a computer- or memory-resident representation is known in the field of computer science and may be described herein as processor search manager apparatus in the form of a client or a server.

A representation or illustration such as is shown in FIG. 25 can be automatically generated by a computer program and either displayed using a computer display such as a LCD or CRT screen or projector, or printed using a printer such as a laser or ink-jet printer. Methods for the automatic generation of graphs using computer programs are known in the fields of computer science and computer graphics. For example the DOT language can be used in combination with the Graphviz software, documented and available for download at http://www.graphviz.org/, to automatically generate two-dimensional representations or illustrations of graphs of several types and varying degrees of complexity. The representation or illustration does not need to be restricted to two dimensions. A computer program can also automatically generate three dimensional representations or illustrations of graphs. By way of illustration, the representation or illustration shown in FIG. 27 was generated by a version of the Link Discovery Tool, which is described in the paper “Link Discovery Tool”, R. D. Horn and J. D. Birdwell, Proc. ONDCP/CTAC 1997 International Symposium, Chicago, Ill., Aug. 18-22, 1997, and shows clusters of automatically grouped objects represented in three dimensions as identified by the bounding dashed ellipses 1201, 1202, and 1203. A highlighted path links data in graph 1201 with data in graph 1203. This path shows the shortest chain of associations, which in graph theory is the shortest path, between the two selected objects in clusters 1201 and 1203. Algorithms are known in the computer science field for computing one or more shortest path(s) between two nodes of a graph connected by edges. For example, Dijkstra's algorithm can be utilized by way of example, as described in Dijkstra, E. W. (1959), “A note on two problems in connexion with graphs,” Numerische Mathematik 1, 269-271, and Cormen, Thomas H.; Leiserson, Charles E.; Rivest, Ronald L.; Stein, Clifford (2001), “Section 24.3: Dijkstra's algorithm;” Introduction to Algorithms (Second Edition), MIT Press abd McGraw-Hill, 595-601, ISBN 0-262-03293-7, which publications are incorporated by reference herein as to their entire contents in the event the material is deemed essential to an understanding of the invention.

Example 2 A Target Object

FIG. 28 displays an exemplary evidence tree using an on-screen graph representation generated by the prototype software for central object 95, a second example. The graph represents the decomposition of an object (with an assigned ID of 95) into its constituent parts and several associated trace evidence specimens—all shown as connected gray circles. Forensic measurements are represented as rounded rectangles—blue for spectral signatures, and orange for trace particle data. The perimeter of the circular, gray shaded area that underlies the object tree is the evidentiary data boundary-any data within or intersecting the large circle may be factually associated with the object represented by the centered small circle 95.

An objective of the prototype method is to utilize all evidence associated with an object and compare it to similar evidence of other objects or reference data to obtain forensic leads and assist with the identification of object source or event information. Comparisons are made between all stored pairs of evidentiary data objects that have associated forensic measurements of the same forensic technology and have not been previously evaluated. For the test data set illustrated here, all trace particle and spectral data measurements are compared, for example, via associated geographic origin and environmental property. This process is repeated to compare evidentiary items to any available reference items for each technology. Similarity searches are preferably not performed by the underlying COTS database; rather, data are loaded into memory where high-speed, technology-specific search algorithms are employed by processor search manager apparatus. The system implements novel methods to index multi-dimensional and structured data in a manner that supports efficient search and retrieval of objects from a database that are most similar to a specified target object. These methods are generalizations of the technologies described in U.S. Pat. Nos. 6,741,983, 7,272,612, and 7,454,411. The prototype system relies upon these multi-dimensional indexing methods to rapidly determine stored data objects that are most similar to target objects of the same type, assesses the similarities between these data objects, and asserts these discovered relationships in the database. Automated inference methods can then discover relationships among object components and reference data (spectral and trace assemblage particle in this example) and assert observations about and evidentiary support for the likely source of the objects. The result of each pairwise similarity comparison is a scalar value between zero (no similarity) and one (perfectly identical). Each comparison that yields a value above a configured threshold is stored for subsequent graph-based analysis.

FIG. 29 was produced by the prototype system and shows target object 95 and exemplary evidence and reference data that have been found to be directly associated to evidence belonging to target object 95. This includes components from objects 87, 104, and 117 (shown as separate circular graphs) as well as reference trace particle data objects 29, 1152, and 3611 and reference spectral data 309 and 378. The location property value where target object 95 was observed is indicated by, for example, the square labeled 95-DL on a circle connecting the centers of object circles 87, 104, 117 and a solid line links point 95-DL to target object 95. Physical locations and sources are generally referred to as “environmental contexts” within the software system where, as discussed above, environment and location may be considered soil type, vegetation, climate and other environmental and location context. The dashed lines of FIG. 29 represent similarity linkages that satisfy thresholds used in the similarity search—for example, the dashed lines linking 95.1-1, 87.1-1, 104.1-1, 117.1-1 and ESD samples 309, 378 are linkages between spectra, and the dashed lines linking 95.3.1-1, 87.3.1-1, 104,3,1-1, 104.2.1-1, 117.3.1-1 and MAD Assm 29 and 1152 are trace particle, assemblage linkages. Each evidence tree has an associated shaded data boundary indicating its extent. This graph is a small section of a larger graph produced by performing similarity based comparisons on all evidentiary items and reference data stored in the system and creating similarity linkages. Each pathway (or conclusion) has an associated aggregate similarity value (the product of all similarity-linkage values), a speculation level, and a model-based rank. The speculation level of a conclusion roughly translates into the number of non-factual linkages that are traversed by the pathway, and the rank is an ordinal value that balances the similarity with the speculation level, and indicates the relative importance of the pathway/conclusion.

One of these pathways is highlighted in FIG. 29. The highlighted path follows from the target object evidence tree beginning at data 95.3 and follows the path 95.3.1, 95.3.1-1 (depicted in orange as an outermost element of the evidence tree to MAD Assm 29 (depicted, for example, by using outer dashed squares and circles to represent the points on the path) to a MAD Loc 56, for example, comprising data for a geographic region where such assemblages are known and shown. In this manner, an assemblage associated with target object 95 is linked to an assemblage geographic region or environmental property.

These methods, when combined with an effective indexing and search strategy, provide a novel approach for the detection and utilization of correlations among objects and may be depicted as an output of a modified link discovery tool introduced above. The correlations are based upon different measurement modalities and allow discovery of associations with either previously processed evidence or reference materials in order to provide findings and their supporting reasoning to support field operations. The methods can support any forensic analysis technique where comparative assessments can be made.

Referring to FIG. 30, there is shown a data modeler platform in accordance with one embodiment. In accordance with FIG. 30, client 3030 (two clients of a possible plurality of clients shown), server 3000 and storage 3010 can be combined as a single unit (e.g., a computer or laptop), or separate units (multiple computers that communicate using, for example, a network). Client 3030(1) may be one of a plurality of clients connected by communications system 3020 to each other and server 3000. Each unit is able to communicate with either a user (using, for example, a keyboard, mouse, and display, not shown) or a computer or device (using, for example, a wired network 3020 such as Ethernet or a wireless communications infrastructure such as IEEE 802.11 or a packet data network 3020 such as 3G cellular or PCS), which can optionally provide an interface to a user.

The server 3000 may be implemented using several networked servers with different functions allocated to each server. For example, a server 3000 might be utilized for each database index. A separate server, or multiple servers, not shown, might also be utilized to process transactions and communications with clients 3030(1) and 3030(2). One or more servers 3000 might be utilized to control specialized data or image acquisition equipment such as microscopes, cameras, and scanners. Alternatively, some or all of these servers might be implemented as virtual servers in one or more physical servers using software such as Xen (http://www.xen.org/), VMware ESXi (http://www.vmware.com/), or Sun xVM Ops Center (http://www.sun.com/software/products/xvmopsccnter/index.jsp).

As another alternative, the server 3000 could utilize a computer with multiple processors and/or multiple cores having either a symmetric multi-processing (SMP) or non-uniform memory access (NUMA) architecture. Storage 3010 can be contained within the server, or separate, as would be the case, for example, when a network-attached storage (NAS) device or storage appliance was used. Redundant storage systems may be utilized; example technologies include RAID and Sun ZFS, and may include redundant hardware, power, and network pathways. The server 3000 may, by way of example, be a Sun Fire X2200 M2 x64 Server containing two quad-core AMD model 2376 processors, 32 GB of memory, two 146 GB SAS hard disk drives, and a DVD-ROM. The bus system 3005 may include a Sun StorageTek™ 8-port external SAS PCI-Express Host Bus Adapter that is housed with the server 3000 as an interface to an external storage array 3010. The external storage array 3010 may be a Sun Storage J4200 array with 6 TB of storage. The work station systems include, for example, six Sun Ultra 24 Workstations with 22″ LCD monitors, which can be used as clients 3030 to the server 2200. Racking for the system may include an equipment rack with a power distribution unit and an uninterruptible power supply. A network switch for network 3020 is not shown but may be implied from their common utility in, for example, a local area network, a wide area local network or any telecommunications network known in the art. A typical network switch for the system of FIG. 30 may be the Netgear JGS524 Prosafe 24-Port Gigabit Ethernet Switch, with compatible (CAT-5e or CAT-6) cabling. If one were to use network attached storage (NAS) such as iSCSI or a network storage device such as the Sun 7200 Unified Storage System, a second network switch might be utilized to separate data traffic between the storage system 3010 and the server 3000 from data traffic between the server 3000 and other computers or clients 3030.

By way of example, system components will now be discussed with reference to FIG. 31. Referring to FIG. 31, the system supporting databases and prediction of properties of objects has at least one processor 3100, but may have more than one processor, and the processor may implement more than one processor core. The processor has access to memory 3110, which is used to store index structures that enable rapid access to stored objects that have similarities to the attributes of a target object specified in a query. Storage 3120 is utilized to provide persistent memory and to serve as a repository for information that does not need to be accessed as efficiently (rapidly) as the in-memory objects. For example, images may reside in storage 3120 while descriptions of the shapes of segments of these images or other attributes of the images may reside in memory 3110. One or more clients 3140 can submit queries to the server's software, which are interpreted by the processor 3100 in order to perform searches using the index structures that are resident in memory 3110 and, possibly, the data contained in the storage 3120. Results are returned by the processor 3100 to the clients 3140 via network 3130. Users can interact with the system through the client(s) 3140 using input devices such as a keyboard 3142 and mouse 3144 and output devices such as a display 3146. All of the components may be implemented in a single computer system such as a laptop, desktop, or server, or they may be implemented in separate computers that interact using a communications medium such as a wired or wireless network 3130.

A data acquisition device 3150 may be connected to either a client 3140 or a server 3000, 3010, 3020 using an interface such as a serial interface, Ethernet, a data acquisition and control card, a universal serial bus (USB), or a FireWire bus or network 3020, 3130. Example data acquisition devices include scanners, microscopes (optical, electron, or confocal), cameras (still image or video), antennas, infrared sensors, acoustic sensors, laser rangefinders or scanners, and spectroscopic instrumentation or related field portable devices such as a device for detecting energetic particles. The interface 3130 to the data acquisition device 3150 may be bi-directional, meaning that the server or client can control the operation of the data acquisition device 3150 to, for example, locate and examine portions of a specimen that is subject to analysis. The data acquisition device 3150 may utilize a wireless, wired, acoustic, or optical communications link to control a remote device and/or acquire information from a remote device.

All United States and foreign patents and articles whose citations are provided above should be deemed to be incorporated by reference as to their entire contents for the purposes of understanding the underlying technology behind an embodiment of a method and apparatus for predicting object properties using similarity-based information retrieval and modeling. The embodiments of a method and apparatus for predicting properties using similarity-based information retrieval and modeling described above should only be deemed to be limited by the scope of the claims which follow. 

What we claim is:
 1. A computer-implemented method of dynamic indexing of spectral data of a spectral database tree having a root node, the method implemented on processor search manager apparatus comprising a processor and memory, the method comprising: storing spectral data in a database of said memory, the spectral data being represented by an attribute vector having a plurality of M dimensions, where M is at least three; defining a root node of a spectral database tree and a test for the root node responsive to a query to said processor search manager apparatus related to an object, the test defining an indexing surface in a three dimensional sub-space for separating the spectral data into at least two clusters of spectral data; and applying a test for another node of the spectral database tree, the processor outputting reference evidence data responsive to said query comprising one of a location, a manufacturer and an event related to the query object, the query object being a target object.
 2. The computer-implemented method of claim 1, further comprising: using Euclidean distance to determine similarity between spectra data samples.
 3. The computer-implemented method of claim 1, further comprising: using a cosine distance metric to determine similarity between spectra data samples.
 4. The computer-implemented method of claim 1, further comprising: using a squared chord distance to determine similarity between spectra data samples.
 5. The computer-implemented method of claim 1, further comprising: the method for dynamic indexing for a plurality of objects having an association between first and second objects and displaying the association as one of a line and a curved line joining the first and second objects.
 6. The computer-implemented method of claim 1 comprising displaying the target object at a location central to the display, the target object displayed as a symbol and linked by one of a line and a curved line to another object, one of the lines forming a part of a pathway having a similarity value, a speculation level and a model-based rank, the rank being an ordinal value balancing the similarity with the speculation level.
 7. The computer-implemented method of claim 1 further comprising recursively applying another test for another node to define a second indexing surface in said three dimensional subspace for separating the spectral data into at least three clusters of spectral data and displaying the first indexing surface and the second indexing surface and first, second and third clusters of spectral data.
 8. Computer apparatus for the dynamic indexing of spectral data, the spectral data being of a spectral database tree having a root node, the computer apparatus comprising search manager apparatus, the search manager apparatus comprising a processor, memory associated with the processor and an output device, the computer apparatus comprising a memory for storing the spectral data of the spectral database, the spectral data being represented by a attribute vector having a plurality of M dimensions, where M is at least three; the processor for defining a root node of the spectral database tree and a test for the root node responsive to a query received at the processor search manager apparatus, the query related to an object, the test defining an indexing surface in a three dimensional sub-space for separating the spectral data into at least two clusters of spectral data; the processor for applying a test for another node of the spectral database tree, the processor outputting reference evidence data responsive to the query via the output device, the query for one of a location, a manufacturer and an event related to the query object, the query object being a target object.
 9. The computer apparatus of claim 8, the processor using Euclidean distance to determine similarity between spectral data samples.
 10. The computer apparatus of claim 8, the processor using a cosine distance metric to determine similarity between spectral data samples.
 11. The computer apparatus of claim 8, the output device for outputting an association between first and second objects as one of a line and a curved line joining the first and second objects.
 12. The computer apparatus of claim 8, the output device for displaying the target object at a location central to a display as a symbol and the target object being linked by one of a line and a curved line to another object, the one of a line and a curved line forming a part of a pathway having a similarity value, a speculation level and a model-based rank calculated by the processor, the rank being an ordinal value balancing the similarity with the speculation level.
 13. The computer apparatus of claim 12, the display output device outputting the display further comprising a plurality of circles, a first circle comprising the first and second objects linked by the one of the line and the curved line, the second object further being linked to a third object of a second circle.
 14. A computer-implemented method of generating an evidence tree of spectral data, the method implemented on processor search manager apparatus comprising a processor and memory, the method using a model comprising: creating a display showing a pathway of linkages between a target object comprising a symbol and a second object and a third object, the target object, the second object and the third object being different from one another, the target object linked to the second object and the second object linked to the third object, each link represented by one of a curved line and a line, the pathway comprising a similarity value, a speculation level and a model-based rank, each of the similarity value, the speculation value and the model-based rank being stored in the memory for the pathway, the rank being an ordinal value for balancing the similarity with the speculation level; and the dynamic indexing for predicting a property of the target object using the model, the model comprising a property of the third object.
 15. The computer-implemented method of claim 14, the display further comprising a plurality of circles, a first circle comprising the first target object and second object linked by one of the line and the curved line, the second object further being linked to a third object of a second circle.
 16. The computer-implemented method of claim 15, the display further comprising a third circle having a fourth object, the second and third circles being displayed within a fourth circle concentric with the first circle.
 17. The computer-implemented method of claim 14 further comprising displaying a forensic measurement as a rectangular symbol, the forensic measurement comprising one of a frequency spectral signature and a thermal signature associated with a target object.
 18. The computer-implemented method of claim 15 further comprising displaying the first, second and third objects as three circular graphs.
 19. The computer-implemented method of claim 14, further comprising displaying an outer concentric circle for a displayed forensic measurement comprising a predicted property, the predicted property comprising a one of a frequency spectral signature and a thermal signature associated with the target object.
 20. The computer-implemented method of claim 14, further comprising displaying an evidence tree as a circular graph responsive to an input via an evidence interface of attribute data of a target object, the circular graph representing the target object as a symbol, the target object located at the center of a plurality of concentric circles, a first concentric circle comprising attribute data of the target object, a second, next concentric circle having an object having attribute data located as a symbol on the second, next concentric circle. 